EasyxLab
Jazyk: CS Čeština

Překlad anglického originálu pomocí AI; referenční verzí je originál. Číst anglicky

Studie / S5

Kdo publikuje atestace na PyPI a npm – a kdo přestal?

Pracovní verzeZveřejněno 2026-10-03

Abstrakt

Atestace PEP 740 umožňují komukoli ověřit, že soubor na PyPI sestavil konkrétní repozitář a workflow. Neatestovat je normou. Dne 2026-10-02 jsme změřili:

  • úplnou historii nahrávání 15 000 nejstahovanějších projektů PyPI (seznam hugovk z 2026-10-01);
  • identitu vydavatele každého projektu s atestacemi (PyPI Integrity API);
  • vzorek 1 500 balíčků npm.

Z 14 995 projektů, které jsme mohli analyzovat, 11 336 (75,6 %) nikdy nenahrálo atestovaný soubor.

Přijetí. Nejnovější verze je atestovaná u 3 479 z 14 995 projektů (23,2 %) a u 31,1 % těch, jejichž nejnovější verze byla poprvé nahrána po 2024-10-01. Podle pásma pořadí:

pořadínejnovější verze atestovaná
1–10059,0 %
10 001–15 00020,3 %

Podíl projektů s atestovanou nejnovější verzí vzrostl ze 4,0 % (konec listopadu 2024) na 23,2 % (konec září 2026). S přehledem Are we PEP 740 yet? od Trail of Bits se shodujeme u 359 z jeho 360 balíčků.

Projekty, které přestaly. 148 projektů nahrálo atestovaný soubor a později vydalo verzi bez něj. U 138 z nich měla řada vydání, kterou instaluje pip, atestace a její nejnovější verze žádné nemá: to jsou 3,8 % z 3 659 projektů, které kdy atestovaly. Podle příčiny:

příčinaprojekty
změna nástroje nebo workflow96
jediné ojedinělé vydání15
obnoveno po nejnovějším vydání1
neznámá26

U 53 ze změn nástroje nebo workflow nyní publikační workflow spouští uv publish bez kroku atestace. Příklady, každý doložený commitem v paper.md §5.3: fastapi, typer, fastmcp a supabase. Ukončení je změnou nástrojů pro vydávání, nikoli známkou kompromitace.

Změny vydavatele. Nejméně 307 projektů s atestacemi změnilo vydavatele. Z 188 změn, při nichž se mění repozitář nebo druh vydavatele:

  • 160 potvrzují veřejná data;
  • 16 je v souladu s vlastními metadaty projektu;
  • 12, v 5 projektech, potvrzeno není.

npm. 30,8 % z 1 000 nejpopulárnějších balíčků publikuje údaje o původu (provenance); 4 z 459 balíčků, které to kdy dělaly (0,9 %), přestaly.

Předchozí práce. Nejbližším existujícím měřením je přehled Trail of Bits, který pokrývá 360 nejpopulárnějších balíčků PyPI podle nejnovějšího vydání. Tato studie přidává rozložení mimo těchto 360, historii, ukončení a jejich příčiny a audit vydavatelů (paper.md §2).

Automatizace a kontrola. Studii provedli agenti AI a napsali text. Zkontroloval ji nezávislý recenzent AI (paper.md §4.1).

Citovat tuto studii

Citace
EasyxLab (2026). Who publishes attestations on PyPI and npm — and who stopped? Study S5. EasyByte Hub S. Coop. Mad. https://github.com/easybytehub/easyxlab/tree/main/studies/s5-pypi-attestations
BibTeX
@techreport{easyxlab_s5,
  title       = {Who publishes attestations on PyPI and npm — and who stopped?},
  author      = {{EasyxLab}},
  institution = {EasyByte Hub S. Coop. Mad.},
  number      = {S5},
  year        = {2026},
  url         = {https://github.com/easybytehub/easyxlab/tree/main/studies/s5-pypi-attestations}
}