PyPI's redesigned project pages with clearer security signals are now live
10 points by ubernostrum
10 points by ubernostrum
Couple things worth pointing out:
For people who have an instant reflexive reaction to the term, remember that "attestations" is the terminology being used for "signed packages"; PyPI is working on rolling out the ability to do that, starting with signing packages publishing from CI/CD since that already has an OpenID Connect flow that can be reused as an identity for signing, and working toward a goal of being able to sign with email-based identities.
The signing is not PGP and is not based on a PGP-style "web of trust"; it's based on sigstore and uses ephemeral per-release signing keys to avoid the need to generate, vet, and protect a single long-term reused key as in PGP workflows.
There was some controversy right after this rolled out, because SQLAlchemy, a major Python package, had recently legitimately published a release with a mix of signed and non-signed files and so got a big red security warning on its PyPI page pointing this out. While I understand it can be annoying for a maintainer to have that happen, I'm also sympathetic to PyPI, because it's a case where automation on the PyPI side cannot distinguish between "they meant to do that" and "they've been compromised", and they chose to err on the side of caution. I'm not going to link into the followup discussions about this, but if you're someone who follows Python packaging you can almost certainly find them.
For some added context see this discussion on the PyPi issue tracker: https://github.com/pypi/warehouse/issues/20927