Migrate python projects packaging to PEP-621
ssbarnea opened this issue · comments
As we want to implement PEP-621 (pure pyproject.toml
) to all devtools project ASAP, we need to get setuptools>=61.0.0
inside AAP repositories, as RHEL 9 only has 53.0.0.
This will allow building the RPM offline using python -m build
To test ability to build the RPM one can look at subprocess-tee library which I already converted to PEP-621. That also has packit that build on Fedora 37 and Rawhide. Older versions are not building because they lack the requirements.
It should be noted that that these are only build-time requirements, and not runtime ones. This means that downstream packagers could use other tricks to overcome the outdated toolchain, like installing them from other sources (pypi, other rpm repos) during build.
List of known build requirements for our implementation of PEP-621:
setuptools >= 61.0
setuptools_scm[toml] >= 7.0.0
Checklist
Projects identified so far (could be more):
- ansible-lint
- ansible-compat
- ansible-navigator
- enrich
- molecule
- selinux
- subprocess-tee
- sphinx_ansible_theme
Once the migration is merged, also add pep-621
topic to the repository.