With modern pip, setuptools is not required on runtime.
Python packages use PEP 517 instead.
Hence, we no longer Recommend setuptools and pip, but pip only.
Users who are impacted may see one of:
ModuleNotFoundError: No module named 'setuptools'
ModuleNotFoundError: No module named 'pkg_resoureces'
They can easily recover by installing python3-setuptools or python3-pkg_resources.
Related but not explicitly part of:
https://fedoraproject.org/wiki/Changes/Reduce_dependencies_on_python3-setuptools
Together with this change, we move the pip Recommendation to the python3-devel package.
"Regular users" of Fedora are less likely to need pip and more likely to brick
their systems with it. If they need pip, they can dnf install pip.
Pip (incl. setuptools) still works in environments created with venv or virtualenv.
Not bumping the release because this only affects the package when we
upgrade the main Python in Fedora to 3.10.
The regex was broken for two+ digit minor version.
Providing python(abi) = 3.10 confuses the dependency resolution in the
Python 3.10 testing copr.
E.g. python3-sphinx requires `python(abi) = 3.10` and `/usr/bin/python3`.
In certain circumstances, dnf installs python3 and python3.10 from rawhide,
satisfying both of the dependencies.
Running `sphinx-build` hence ends up with:
Traceback (most recent call last):
File "/usr/bin/sphinx-build", line 5, in <module>
from sphinx.cmd.build import main
ModuleNotFoundError: No module named 'sphinx'
The `dirname $0` breaks the script when it is linked to a different location,
for example the RHEL's /usr/libexec/platform-python-config.
The error handling was never reachable, failed exec ends the script.
See https://src.fedoraproject.org/rpms/python3.9/pull-request/38
We create an artificial Git repo to apply patches.
Python build system thinks that it's building from Git and embeds a bogus
branch name into its version string:
$ python3
Python 3.9.0b5 (heads/master-dirty:24c7f56, Aug 3 2020, 00:00:00)
[GCC 10.2.1 20200804 (Red Hat 10.2.1-2)] on linux
Type "help", "copyright", "credits" or "license" for more information.
Tell configure that Git is not installed. This reverts that part
of sys.version to "default".