Live data from Hacker News

PyPI in 2025: A Year in Review

blog.pypi.org

41–43 of 43 posts

Re: PyPI in 2025: A Year in Review

#41

Is the compute and network required to service pypi all from donations or do they have any business arm that generates income?

The infrastructure sponsors can be found in the PyPI footer, and here: https://pypi.org/sponsors/#:~:text=Infrastructure%20sponsors

Re: PyPI in 2025: A Year in Review

#42
post #22

> Trusted Publishing Why do people come up with such unbelievably complex solutions that don’t actually achieve what a simple solution could do? Trusted Publishing approximately involves a service like GitHub proving to somebody that some release artifact came from a GitHub Actions workflow file with a particular name, possibly in a particular commit. Never mind that GitHub Actions is an unbelievable security nightma…

This does seem wildly overcomplicated. Here is the attestation system they use: https://github.com/in-toto/attestation/blob/main/spec/README...

Why not Just(TM) enforce a reproducible build process? That brings some of its own challenges, but would represent a real upgrade over building out some Swiss cheese like this.

Re: PyPI in 2025: A Year in Review

#43
post #22

> Trusted Publishing Why do people come up with such unbelievably complex solutions that don’t actually achieve what a simple solution could do? Trusted Publishing approximately involves a service like GitHub proving to somebody that some release artifact came from a GitHub Actions workflow file with a particular name, possibly in a particular commit. Never mind that GitHub Actions is an unbelievable security nightma…

You linked to a page that has the "how" of attestations, not the "what," so it's not super surprising that you don't see an answer there. This page details the "what"[1].

> PyPI could check the GitHub immutable tag, read the commit hash, and verify the whole chain of hashes from the files to the tree to the commit.

Tags are neither immutable nor durable on GitHub. This also breaks in the presence of any non-trivial build backend, including anything that produces a non-pure-Python wheel. Complexity is often bad, but just about every complex aspect of PyPI's attestation scheme has a reason behind it.

[1]: https://docs.pypi.org/attestations/publish/v1/

Post reply on HN