Hi,
according to the "Fedora Packaging Guidelines for Python" [0] the "Example
common spec file" [1] contained in those very same guidelines is wrong.
Specifically, the section "Naming" [2] in the guidelines says the following:
(1) "Both python 2 and python 3 variants must provide symlinks with a '-X'
and '-X.Y' suffix (python runtime major version, or python runtime major.minor
version), unless upstream already provides appropriately versioned executables without the
dash."
(2) "The unversioned executable must be the python2 version."
(3) "For example, the python3 version of "coverage" must ship executables
/usr/bin/coverage-3 and /usr/bin/coverage-3.4 (assuming python3 is currently version 3.4),
while the python2 version must provide /usr/bin/coverage, /usr/bin/coverage-2 and
/usr/bin/coverage-2.7 (assuming python2 version 2.7)."
So given that, the "Example common spec file" [1] has the following problems:
* The unversioned executable ('%{_bindir}/sample-exec') is provided by the
python3- subpackage instead of the python2- subpackage.
* In the %install section, the order of execution of the %py2_install and %py3_install
macros is wrong, since it leads to python3- subpackage providing the unversioned
executable. The comment in the section should be modified accordingly as well.
* Neither python2- nor python3- subpackages provide symlinks to the '-X' suffix,
i.e. 'sample-exec-2' and 'sample-exec-3'
[0]
https://fedoraproject.org/wiki/Packagingython
[1]
https://fedoraproject.org/wiki/Packagingython#Example_common_spec_file
[2]
https://fedoraproject.org/wiki/Packagingython#Naming
Thank you for your time,
Tomas Orsava