When %__python3 is redefined to something different than /usr/bin/python3, %pyproject macros will fail to function. Several problems: 1) %pyproject_buildrequires will run on %__python3 but it will produce python3dist() buildrequires (see bz1821486 for problems with that) and will BR python3-devel 2) the macro package runtime depends on hardcoded list of python3 packages (from the main stack), when Fedora 30 goes EOL we should only support using the dynamic buildrequires once (1) is fixed (or we should only preserve the manual requires on Fedora 30) 3) %tox will try to invoke /usr/bin/tox, but `tox --current-env` can only work if it runs tox via `%{__python3} -m tox` Most likely other issues, this is not a full analysis.
I am trying to build an alternative Python stack (3.8) on Fedora rawhide in COPR (https://copr.fedorainfracloud.org/coprs/lbalhar/alternative_stack/) and fix all problems along the way. There is currently nothing more on top of the points mentioned in the first comment.
Fixes for all three points above and one more: https://src.fedoraproject.org/rpms/pyproject-rpm-macros/pull-request/65
This bug appears to have been reported against 'rawhide' during the Fedora 33 development cycle. Changing version to 33.