Generate python3dist(setuptools/wheel) BuildRequires directly from the macro
The macro already checks if pyproject.toml exists and echoes the dependency on python3dist(toml) early. This adds an else branch to echo the default backend. For projects without pyproject.toml, the number of installation rounds is reduced. Previously: 1. (python3-devel +) pip + packaging 2. setuptools + wheel 3. ... Now: 1. (python3-devel +) pip + packaging + setuptools + wheel 2. ... This duplicates the information about the default build backend, because the script still needs to handle projects with pyproject.toml without an explicit build backend option. Hence, the script was not adapted (except a comment).
This commit is contained in:
parent
06b21e1976
commit
ff396611dd
@ -87,6 +87,10 @@ echo 'python%{python3_pkgversion}dist(pip) >= 19'
|
||||
echo 'python%{python3_pkgversion}dist(packaging)'
|
||||
if [ -f pyproject.toml ]; then
|
||||
echo 'python%{python3_pkgversion}dist(toml)'
|
||||
else
|
||||
# Note: If the default requirements change, also change them in the script!
|
||||
echo 'python%{python3_pkgversion}dist(setuptools) >= 40.8'
|
||||
echo 'python%{python3_pkgversion}dist(wheel)'
|
||||
fi
|
||||
# Check if we can generate dependencies on Python extras
|
||||
if [ "%{py_dist_name []}" == "[]" ]; then
|
||||
|
@ -107,6 +107,7 @@ export HOSTNAME="rpmbuild" # to speedup tox in network-less mock, see rhbz#1856
|
||||
* Tue Feb 02 2021 Miro Hrončok <mhroncok@redhat.com> - 0-37
|
||||
- Remove support for Python 3.7 from %%pyproject_buildrequires
|
||||
- Generate python3dist(toml) BR with pyproject.toml earlier to avoid extra install round
|
||||
- Generate python3dist(setutpools/wheel) BR without pyproject.toml earlier as well
|
||||
|
||||
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0-36
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||
|
@ -177,6 +177,10 @@ def get_backend(requirements):
|
||||
# (either directly, or by implicitly invoking the [following] backend).
|
||||
backend_name = 'setuptools.build_meta:__legacy__'
|
||||
|
||||
# Note: For projects without pyproject.toml, this was already echoed
|
||||
# by the %pyproject_buildrequires macro, but this also handles cases
|
||||
# with pyproject.toml without a specified build backend.
|
||||
# If the default requirements change, also change them in the macro!
|
||||
requirements.add('setuptools >= 40.8', source='default build backend')
|
||||
requirements.add('wheel', source='default build backend')
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user