Skip to content

Migrate python projects packaging to PEP-621 #78

@ssbarnea

Description

@ssbarnea

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.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions