From Fedora Project Wiki
No edit summary
(Summary update with shebang issue)
Line 1: Line 1:
The [[Mass bug filing]] information for using ambiguous `python-` prefix in package names.
{{DISPLAYTITLE:Bug Texts for Package Naming Issues}}
 
The [[Mass bug filing]] information for using unqualified `python-` prefix in package names, requirements and shebangs.


== Summary ==
== Summary ==


According to the Fedora packaging guidelines for Python, Python 2 binary packages MUST
According to the Fedora packaging guidelines for Python, Python 2 binary packages '''must'''
be named starting with "python2-" and Python 3 binary package MUST be named starting  
be named starting with "python2-" and Python 3 binary package '''must''' be named starting  
with "python3-" [[Packaging:NamingGuidelines#Python2_binary_package_naming|[1]]]. Besides,
with "python3-" [[Packaging:NamingGuidelines#Python2_binary_package_naming|[1]]]. Besides,
"python-" MUST NOT be used in dependencies unless the proper "python2-" or "python3-"
"python-" '''must not''' be used in dependencies unless the proper "python2-" or "python3-"
packages do not exist [[Packaging:Python#Dependencies|[2]]].
packages do not exist [[Packaging:Python#Dependencies|[2]]].


Here are some common problems; bug report
Here are some common problems; bug report text for each one is below.
text for each one is below.


* Using `python` instead of `python2`/`python3` in binary RPM package name
* Using <code>python</code> instead of <code>python2</code>/<code>python3</code> in binary RPM package name
* Using `python` instead of `python2`/`python3` in (Build)Requires
* Using <code>python</code> instead of <code>python2</code>/<code>python3</code> in (Build)Requires
* Using <code>/usr/bin/python</code> or <code>/usr/bin/env python</code> instead of <code>/usr/bin/python2</code> or <code>/usr/bin/python3</code> in shebangs


== Tracker bug ==
== Tracker Bugs ==





Revision as of 14:17, 1 August 2017


The Mass bug filing information for using unqualified python- prefix in package names, requirements and shebangs.

Summary

According to the Fedora packaging guidelines for Python, Python 2 binary packages must be named starting with "python2-" and Python 3 binary package must be named starting with "python3-" [1]. Besides, "python-" must not be used in dependencies unless the proper "python2-" or "python3-" packages do not exist [2].

Here are some common problems; bug report text for each one is below.

  • Using python instead of python2/python3 in binary RPM package name
  • Using python instead of python2/python3 in (Build)Requires
  • Using /usr/bin/python or /usr/bin/env python instead of /usr/bin/python2 or /usr/bin/python3 in shebangs

Tracker Bugs

[UNQUALIFIED_PYTHON] Track usage of python instead of python2/python3

Here we are tracking issues related to switching "Python" to mean "Python 3" in Fedora. These include:

* Using python instead of python2/python3 in binary RPM package name
* Using python instead of python2/python3 in (Build)Requires

For mass bug filing information, see: <link to email>

Python packaging guidelines: https://fedoraproject.org/wiki/Packaging:Python

Bug Titles and Texts

Misnamed Binary RPM

Subject: <name> uses ambiguous python- prefix

The following Python 2 subpackage(s) is (are) named using a wrong naming scheme:
* <name> - expected to be named <correct name>

According  to Fedora packaging guidelines [0], Python binary packages must be named
with either python2- or python3- prefix. 

Please rename the binary RPM(s). There is a section on Python package naming scheme
in the Python RPM Porting Guide [1] and you may refer to it for more instructions.

It's ok to do this in Rawhide only.

If anything is unclear, or if you need any kind of assistance, you can
ask on IRC (#fedora-python on Freenode), or reply here.

[0] https://fedoraproject.org/wiki/Packaging:Naming?rd=Packaging:NamingGuidelines#Python2_binary_package_naming
[1] https://python-rpm-porting.readthedocs.io/en/latest/naming-scheme.html

Misnamed (Build)Requires

Subject: <name> depends on packages using ambiguous python- prefix

The following RPM(s) use(s) names with ambiguous python- prefix in requirements:

<rpm name> (Build)Requires:
 *  <require name> (<correct name> is available)
 ... (repeat for each affected RPM)

According  to Fedora Packaging guidelines for Python [0], packages must use names
with either python2- or python3- prefix in requirements where available.

Please go through the buildtime and runtime requirements of the package and fix
the names to comply with the guidelines.

It's ok to do this in Rawhide only.

If anything is unclear, or if you need any kind of assistance, you can
ask on IRC (#fedora-python on Freenode), or reply here.

[0] https://fedoraproject.org/wiki/Packaging:Python#Dependencies

Misnamed Binary RPM and (Build)Requires

Subject: <name> uses ambiguous python- prefix

The following Python 2 subpackage(s) is (are) named using a wrong naming scheme:
* <name> - expected to be named <correct name>

Besides this, the following RPM(s) use(s) names with ambiguous python prefix in
requirements:

<rpm name> (Build)Requires:
 *  <require name> (while <correct name> is available)
 ... (repeat for each affected RPM)

Both issues described above violate Fedora packaging guidelines, which state that:
* Python binary packages must be named with either python2- or python3- prefix [0];
* Fedora packages must use names with either python2- or python3- prefix in
requirements where available [1].

Please  rename the binary RPM(s) and use python2- or python3- prefixed names
in runtime and buildtime requirements. There is a section on  Python package naming
scheme in the Python RPM Porting Guide [2] and you may refer to it for more instructions.

It's ok to do this in Rawhide only.

If anything is unclear, or if you need any kind of assistance, you can
ask on IRC (#fedora-python on Freenode), or reply here.

[0] https://fedoraproject.org/wiki/Packaging:Naming?rd=Packaging:NamingGuidelines#Python2_binary_package_naming
[1] https://fedoraproject.org/wiki/Packaging:Python#Dependencies
[2] https://python-rpm-porting.readthedocs.io/en/latest/naming-scheme.html