Реєстр у сукупності · метрики 2.10.0

Стан PyPI.

Сукупна статистика всіх інспектованих репозиторіїв, що публікуються в PyPI — як розподіляється здоров'я, де зосереджено обсяг завантажень і які практики поширені чи рідкісні, у зіставленні з усім реєстром.

Інспектовані репозиторії
9 854 із 9 854 проіндексованих
Місячні завантаження під інспекцією
53.5B за даними реєстрів
Медіанний індекс здоров'я
69 Добрий
Добрий або кращий
57% індекс 65 і вище

Розподіл індексу здоров'я

Останній індекс здоров'я кожного інспектованого репозиторію, з кроком п'ять пунктів на шкалі 1–100.

Де зосереджено обсяг завантажень

Сукупні місячні завантаження за діапазонами у зіставленні з кількістю репозиторіїв.

15% місячного обсягу завантажень під інспекцією проходить через репозиторії нижче доброго діапазону — а 1% найзавантажуваніших репозиторіїв несе 71% усього обсягу.

Репозиторії
24%21%21%
Обсяг завантажень
47%24%
ДіапазонРепозиторіїЗавантажень / місЧастка обсягу
Винятковий1 13325.4B47%
Відмінний2 40712.6B24%
Добрий2 0347.6B14%
Помірний2 0373.3B6.2%
Слабкий9641B1.9%
У зоні ризику9183.2B6.0%
Критичний361422M0.8%

Форми оцінок

Розподіл, що стоїть за медіаною кожної категорії, з кроком десять пунктів — де реєстр скупчується та де категорія розрізняє репозиторії або насичується.

Життєздатність74
1100
Спільнота та впровадження56
1100
Сталість та врядування63
1100
Інженерна якість76
1100
Безпека51
1100
Готовність до ШІ55
1100

Профіль категорій

Медіанна оцінка категорії в межах обсягу. Позначки — медіана всього реєстру. Категорії задокументовано у вікі методології.

Життєздатність
74
Спільнота та впровадження
56
Сталість та врядування
63
Інженерна якість
76
Безпека
51
Готовність до ШІбез ваги
55

Стан практики

Частка інспектованих репозиторіїв, де практика публічно помітна. Звіти, старіші за сигнал, виключаються з його основи й ніколи не зараховуються як відсутність.

Інженерна та спільнотна практика

License detected
96% із 9 854
README
95% із 9 854
Automated tests
94% із 9 854
CI workflows
89% із 9 854
Documentation directory
67% із 9 854
Linter configuration
59% із 9 854
Contributing guide
46% із 9 854
Code of conduct
26% із 9 854
Security policy
23% із 9 854

Сигнали агентної ери

One-command bootstrap
51% із 9 854
AI agent instructions
27% із 9 854
llms.txt
6.8% із 9 854

Сигнали, які читає категорія готовності до ШІ (без ваги в індексі).

Чи означає популярність здоров'я?

Медіанний індекс здоров'я (крапка) і середня половина репозиторіїв (смуга) для кожного інтервалу популярності, на спільній шкалі 1–100.

За зірками GitHub

Under 100 stars 4 991
60 · 45–75
100 – 999 2 454
77 · 57–88
1,000 – 9,999 1 899
86 · 65–93
10,000 and more 510
94 · 86–97

За місячними завантаженнями

Under 10K / month 2 189
63 · 53–78
10K – 1M 1 560
77 · 62–89
1M – 100M 1 211
78 · 53–92
100M and more 91
94 · 78–97

Безпека під мікроскопом

Середній OpenSSF Scorecard результат за кожною перевіркою в межах обсягу, від найслабших, на шкалі Scorecard 0–10. Результати перевірок здебільшого бінарні, тож середнє відображає, яка частина реєстру проходить перевірку. Перевірки, які Scorecard позначає невизначеними, виключаються з оцінювання й ніколи не зараховуються як нуль; підказка кожного рядка містить його основу.

CII-Best-Practices
0.1
Fuzzing
0.5
Signed-Releases
0.9
Branch-Protection
1.4
Pinned-Dependencies
1.6
SAST
1.7
Token-Permissions
1.9
Code-Review
2.6
Security-Policy
2.8
Dependency-Update-Tool
4.5
Maintained
5.8
Vulnerabilities
6.5
CI-Tests
6.8
Contributors
6.9
License
9.5
Binary-Artifacts
9.7
Dangerous-Workflow
9.7
Packaging
10.0

Тривожні сигнали

Знахідки, які коригують оцінку вниз, а не нараховують до неї бали. Кожну подано як кількість, як частку всього реєстру і як частоту серед репозиторіїв, для яких її взагалі можна було визначити.

Припинення супроводу
8488.6% реєстру · 8.6% з 9 854 оцінених
Пов’язаність із юрисдикціями високого ризику
1451.5% реєстру · 1.6% з 8 993 оцінених
Шкідливі залежності
4<0.1% реєстру · <0.1% з 5 352 оцінених
Неорганічний ріст
1<0.1% реєстру · 0.2% з 506 оцінених

Тривожний сигнал потребує власних свідчень, тож його база менша за реєстр. Автентичність росту оцінюється лише там, де зібрано поденну історію; знахідки щодо залежностей — лише там, де резолвився граф залежностей. Репозиторії, щодо яких свідчення не дають відповіді, до бази не входять, а не зараховуються як пройдені.

Пульс

Наскільки нещодавно кожен інспектований репозиторій востаннє бачив пуш — станом на момент інспекції.

Половина інспектованих репозиторіїв бачила пуш протягом 3 днів до інспекції.

Давність пушу
73%
Останній пушРепозиторіїЧастка
Pushed within 30 days7 23873%
31 – 90 days6606.7%
91 – 365 days8638.8%
Over a year1 09311%

Опіка та стійкість

Хто стоїть за інспектованими репозиторіями та від скількох людей залежить код. Обидва показники читає категорія врядування.

5 829Organization-stewarded медіана 78
4 025Personal accounts медіана 59

Бас-фактор мейнтейнерів

70% інспектованих репозиторіїв залежать від єдиного мейнтейнера в більшості своїх комітів — зокрема 793 із понад мільйоном місячних завантажень.

1 мейнтейнер
6 876
2 мейнтейнери
1 667
3–5 мейнтейнера
1 022
6+ мейнтейнерів
256

Айсберг залежностей

Оголошені прямі залежності у зіставленні з повним розв'язаним графом (прямі плюс транзитивні), за 7 649 звітами зі зібраним графом залежностей.

Медіанний репозиторій оголошує 2 прямі залежності — а розв'язується загалом у 26 пакетів.

Розв'язаних пакетів на репозиторій

0
589
1 – 5
1 305
6 – 20
1 646
21 – 50
1 092
51 – 200
1 433
201 – 500
710
501 – 1,000
391
Over 1,000
483

Ландшафт ліцензій

Найпоширеніші виявлені ліцензії в межах обсягу (ідентифікатори SPDX).

MIT
3 936
Apache-2.0
2 337
Власна ліцензія
1 302
BSD-3-Clause
679
GPL-3.0
409
Ліцензію не виявлено
386
AGPL-3.0
234
BSD-2-Clause
145
LGPL-3.0
99
MPL-2.0
88

На що покладаються найбільше

Найзавантажуваніші репозиторії під інспекцією, що публікуються в PyPI — записи, що важать найбільше в наведених вище цифрах. Решту охоплює повний каталог · покажчик тегів.

PyPI
98Винятковийіндекс здоров'я
pypa/packaging
Core utilities for Python packages
Python★ 746↓ 2.1B/міс4 серп. 2026 р.
Власна ліцензія4 серп. 2026 р. · метрики 2.10.0
PyPI
98Винятковийіндекс здоров'я
urllib3/urllib3
urllib3 is a user-friendly HTTP client library for Python
Python★ 4 052↓ 1.9B/міс28 серп. 2026 р.
MIT28 серп. 2026 р. · метрики 2.10.0
PyPI
83Відміннийіндекс здоров'я
kjd/idna
Internationalized Domain Names for Python (IDNA 2008 and UTS #46)
Python★ 288↓ 1.7B/міс4 серп. 2026 р.
BSD-3-Clause4 серп. 2026 р. · метрики 2.10.0
PyPI
98Винятковийіндекс здоров'я
psf/requests
A simple, yet elegant, HTTP library.
Python★ 54.2K↓ 1.7B/міс4 серп. 2026 р.
Apache-2.04 серп. 2026 р. · метрики 2.10.0
PyPI
100Винятковийіндекс здоров'я
numpy/numpy
The fundamental package for scientific computing with Python.
Python · C★ 32.5K↓ 1.1B/міс4 серп. 2026 р.
Власна ліцензія4 серп. 2026 р. · метрики 2.10.0
PyPI
98Винятковийіндекс здоров'я
pytest-dev/pytest
The pytest framework makes it easy to write small tests, yet scales to support complex functional testing
Python★ 14.5K↓ 1.1B/міс27 серп. 2026 р.
MIT27 серп. 2026 р. · метрики 2.10.0

Як читати ці цифри

  • Кожна цифра обчислена з останньої опублікованої інспекції кожного репозиторію за версіонованою методологією (наразі метрики 2.10.0). Див. методологію · шкалу діапазонів.
  • Статистика описує інспектований реєстр — програмне забезпечення, допущене до інспекції, а не випадкову вибірку всього відкритого коду. Допуск відбувається за критеріями суспільного інтересу.
  • Показники завантажень надходять від реєстрів пакетів; реєстри, що не публікують місячних чисел (Maven Central, Go, NuGet, RubyGems), не додають обсягу — а не нуль. Покриття за екосистемами задокументовано в переліку підтримуваних екосистем.
  • Якщо сигнал у звіті недоступний — незібраний граф залежностей, невизначена перевірка Scorecard, звіт, старіший за сигнал, — репозиторій виключається з основи цієї цифри й ніколи не зараховується проти неї.
  • Індекси здоров'я — це сигнали публічно видимої практики, а не аудити чи гарантії; як їх читати, пояснює стаття індекс здоров'я.
  • Цифри обчислено 2026-09-08 07:53 UTC; сукупні показники перераховуються щогодини. Вихідні дані доступні як JSON.