python-wheel-build / fromager

Build your own wheels
https://fromager.readthedocs.io/en/latest/
Apache License 2.0
7 stars 11 forks source link

Reduce dependencies to simplify bootstrapping #468

Closed tiran closed 1 month ago

tiran commented 1 month ago

Fromager 0.30 depends on several Python packages with platform-specific extensions. Platlib wheels complicate bootstrapping of Fromager on a new platform or CPU architecture.

Some upstream projects (cryptography, PyNaCl, psutil, PyYAML) do not provide wheels for CPU archs like ppc64le and s390x. Cryptography is not going to provide them until upstream project has access to hardware for fast CI/CD.

We should try to reduce our dependency on platlib wheels to make bootstrapping easier. PyGitHub is a low hanging fruit. Fromager uses it to fetch a list of tags and tarball links from GH API. The feature can be re-implemented in a few lines of code.

tiran commented 1 month ago

In downstream we also depend on Twine. I submitted and landed a change that makes it possible to install Twine without keyring and cryptography, https://github.com/pypa/twine/issues/1158 . The change has not been released, yet.

tiran commented 1 month ago

469 has landed.