Re: purpose of ruby(abi), python(abi), etc

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Dec 20, 2012 at 04:40:17PM +0100, Vít Ondruch wrote:
> Dne 20.12.2012 15:46, Rex Dieter napsal(a):
> >On 12/20/2012 02:40 AM, Vít Ondruch wrote:
> >>Dne 20.12.2012 01:43, Garrett Holmstrom napsal(a):
> >>>On 2012-12-19 5:12, Bill Nottingham wrote:
> >>>>Vít Ondruch (vondruch@xxxxxxxxxx) said:
> >>>>>Can somebody enlighten me, what is the purpose of ruby(abi) (replace
> >>>>>by python(abi) if you wish) virtual provide? Especially, why Ruby
> >>>>>packaging guidelines mandate "Requires: ruby(abi) = 1.9.1", i.e.
> >>>>>versioned require? And why in Python packages, python(abi) is
> >>>>>automatically generated?
> >>>>
> >>>>In the python case, it's because that python extension modules
> >>>>install in a version-specific directory ($libdir/python2.7, for
> >>>>example.)
> >>>>This makes them explicitly tied to that version of python.
> >>>
> >>>There's also the fact that the ABI for the bytecode that gets
> >>>generated at build time is specific to each x.y series of python
> >>>releases.
> >>
> >>For that, you could have "Require: python-libs = 2.7" instead.
> >
> >What's the practical difference?
> 
> You follow general practices? You don't have to think if
> {ruby,python}(abi) makes any sense for {JRuby,Jython} and what
> version it should provide in comparison to {ruby,python}. You don't
> force people to ask why Ruby 1.9.3 has ruby(abi) = 1.9.1. You don't
> have to answer such question as what is {ruby,python}(abi) good for?
> 
I don't think I follow your reasoning here:

1) If there is no python(abi) and no automatic dependency checking, then the
packager assumes the burden of adding Requires: python-libs = VERSION in all
of their packages.  They also assume the responsibility of figuring out what
VERSION needs to be.  This is creating more work that should be done
centrally.

2) If there is no python(abi) but the automatic dep checking creates the
Provides and Requires on python-libs = VERSION, then there doesn't seem to be
any difference in terms of the work done.  Someone who maintains the central
dep checking still has to figure out what VERSION should be in either case.
(And, assuming that your question about Ruby 1.9.3 having ruby(abi) = 1.9.1
was more than hypothetical, it sounds like there might just be a lack of
someone performing this duty for Ruby).

-Toshio

Attachment: pgpAmyMd1_T9e.pgp
Description: PGP signature

--
packaging mailing list
packaging@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/packaging

[Index of Archives]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite Forum]     [KDE Users]

  Powered by Linux