On 2012-12-19 5:12, Bill Nottingham wrote:
Vít Ondruch (vondruch(a)redhat.com) 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.