Python Package Index , сокращенно PyPI ( / ˌ p aɪ p i ˈ aɪ / ), также известный как Cheese Shop (отсылка к скетчу «Летающий цирк Монти Пайтона» « Cheese Shop »), [2] : 8 [3] : 742 является официальным сторонним репозиторием программного обеспечения для Python . [4] Он аналогичен репозиторию CPAN для Perl [5] : 36 и репозиторию CRAN для R. PyPI управляется благотворительной организацией Python Software Foundation . Некоторые менеджеры пакетов , включая pip , используют PyPI в качестве источника по умолчанию для пакетов и их зависимостей. [6] [7]
По состоянию на 6 мая 2024 года [обновлять]доступно более 530 000 пакетов Python.
PyPI в основном размещает пакеты Python в форме исходных архивов, называемых «sdists» или «wheels» [8] , которые могут содержать двоичные модули из скомпилированного языка.
PyPI как индекс позволяет пользователям искать пакеты по ключевым словам или фильтрам по их метаданным , таким как лицензия на свободное программное обеспечение или совместимость с POSIX . [9] Одна запись в PyPI может хранить, помимо пакета и его метаданных, предыдущие выпуски пакета, предварительно скомпилированные диски (например, содержащие библиотеки DLL в Windows), а также различные формы для различных операционных систем и версий Python.
Модуль Python Distribution Utilities ( distutils ) был впервые добавлен в стандартную библиотеку Python в версии 1.6.1 в сентябре 2000 года и в версии 2.0 в октябре 2000 года, через девять лет после первого выпуска Python в феврале 1991 года, с целью упрощения процесса установки сторонних пакетов Python. [10] [11]
Однако distutils предоставлял только инструменты для упаковки кода Python и не более того. Он мог собирать и распространять метаданные , но не использовал их для других целей. [12] У Python по-прежнему не было централизованного каталога для пакетов в Интернете. PEP 241, предложение по стандартизации метаданных для индексов, было завершено в марте 2001 года. [13] Предложение о создании всеобъемлющего централизованного каталога, размещенного в домене python.org, было позднее завершено в ноябре 2002 года. [4] [12]
16 апреля 2018 года весь трафик PyPI начал обслуживаться более современной платформой веб-сайта: Warehouse. Старый веб-сайт был отключен в конце того же месяца. [14] [15] Все существующие пакеты были перенесены на новую платформу с сохранением их истории. [16]
В мае 2023 года Python Software Foundation сообщила, что Министерство юстиции США запросило в суде данные пользователей пяти участников PyPI. [17] [18] Представитель организации также пояснил, что они ожидают конфиденциальности от участников, но они также соблюдают закон и постановления суда, и по этой причине передали данные, запрошенные правительством. [17]