New (optional) python egg dependency generator for RPM

Neal Gompa ngompa13 at gmail.com
Tue Nov 17 16:17:56 UTC 2015


On Tue, Nov 17, 2015 at 10:43 AM, Toshio Kuratomi <a.badger at gmail.com> wrote:
>
> On Nov 17, 2015 6:47 AM, "Neal Gompa" <ngompa13 at 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!


More information about the python-devel mailing list