On Tue, Nov 17, 2015 at 10:43 AM, Toshio Kuratomi <a.badger(a)gmail.com> wrote:
On Nov 17, 2015 6:47 AM, "Neal Gompa" <ngompa13(a)gmail.com> wrote:
>
> That's already guaranteed by the auto-generated python(abi) requires,
> and that would also make it hugely problematic to use in spec files in
> any distro agnostic manner, so I don't think I will do that.
>
I could just be being dumb here but it doesn't seem like it would. The
python(abi) will require a specific major.minor of the python package
itself. It will not require a python-setuptools (for instance) that was
built for the same version of python as the package you are installing. If
it was true, then you wouldn't need the separate python2dist and python3dist
as python(abi) would take care of the difference between packages built for
python2 and python3.
example autogenerated deps:
python-setuptools
Provides: python2dist(setuptools)
Requires: python(abi) = 2.7
python2.6-setuptools
Provides: python2dist(setuptools)
Requires: python(abi) = 2.6
python2.6-foo
Requires: python2dist(setuptools)
Requires: python(abi) = 2.6
On my system, I have installed, python-2.7.0 (which provides
python(abi)==2.7), python2.6-2.6.0 (which provides python(abi)==2.6), and
python-setuptools (deps listed above). I want to install python2.6foo. The
depsolver will satisfy python2dist(setuptools) with my already installed
python-setuptools package and python(abi) == 2.6 with python2.6-2.6.0.
Thus, the library will not function correctly because python-2.6 will not be
able to import setuptools.
I see the problem you are describing, but how do you solve it currently?
That said, I *think* I could autogenerate Provides for pythonX.Ydist(M)
and pythonXdist(M), while only having requires generated
with pythonX.Ydist(M). Would that solve the problem while allowing
BuildRequires using pythonXdist(M) to pick up the latest one? I'm not
entirely sure it would...
--
真実はいつも一つ!/ Always, there's only one truth!