[Rpm-maint] [rpm-software-management/rpm] Should python(abi) be provided by the interpreter or something else? (#395)

Miro Hrončok notifications at github.com
Thu Feb 15 18:41:02 UTC 2018


https://github.com/rpm-software-management/rpm/blob/b60a086213b5f0ffd68b445e51d205eb1ac64396/scripts/pythondistdeps.py#L129-L134

I believe this adds `python(abi) == 2.7` for Fedora's `python2-libs`, because it owns `/usr/lib64/python2.7/lib-dynload/Python-2.7.14-py2.7.egg-info`. However, it was always the case that only the package that owns `/usr/bin/python2.7` provides `python(abi) == 2.7`:

https://github.com/rpm-software-management/rpm/blob/b60a086213b5f0ffd68b445e51d205eb1ac64396/scripts/pythondeps.sh#L11-L17

This in fact makes  `python2-libs` satisfy the requirement on `python(abi) == 2.7` without bringing in `python2` (and `/usr/bin/python2.7`). This was [reported as a problem](https://bugzilla.redhat.com/show_bug.cgi?id=1412432).

Now I can fix the problem in several ways:

 * require `python2` from `python2-libs` (adds a dependency that's not always needed, but mostly it is)
 * filter `python(abi) == 2.7` by some exclude macro (meh...)
 * move the `Python-2.7.14-py2.7.egg-info` into `python2` package
 * remove the entire section of `pythondistdeps.py`

Before I proceed, I'd like to know why is this code there and what should `python(abi)` actually mean – is it the interpreter, or not? Thanks for clarifying this.

cc @Conan-Kudo, @proyvind, @ffesti 

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/rpm-software-management/rpm/issues/395
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20180215/936f470a/attachment.html>


More information about the Rpm-maint mailing list