PyPIPyPI (абревіатура від англ. Python Package Index — «каталог пакетів Python») — каталог програмного забезпечення, написаного на мові програмування Python[1]. У поєднанні з системами управління бібліотечними пакетами ( Реєстрація в каталозіАвтори самі реєструють в каталозі свої пакети (перший раз їм необхідно надати дані і про себе) на PyPI [5]: python setup.py register Метадані зазвичай зберігаються в файлі setup.py в складі приготованого до поширення пакета, а завантаження пакета здійснюється однією командою [6]: python setup.py sdist—format=zip,gztar upload Необхідні для реєстрації метадані зафіксовані в PEP241[7] (пропозиції щодо розвитку Python), прийняті в 2001 році. Обов'язковими є: версія метаданих, назва пакета, версія пакета, платформа (платформи), короткий опис, адреса електронної пошти автора, ліцензія. Крім того, пакет може бути класифікований за допомогою одного або декількох класифікаторів. Системи управління бібліотечними пакетамиМодуль
Можливості Система управління пакетами Утиліта easy_install є доповнення до Від проекту Мається на увазі[11], що в розроблюваний нині на основі Утиліта pip є аналогом easy_install[13]. ПрикладНаступний приклад запозичений з файлу setup.py пакета webpy-celery і являє собою опис метаданих, що відносяться до пакету: setup(
name='webpy-celery',
version=__version__,
url='http://github.com/faruken/webpy-celery',
license='BSD',
author='Faruk Akgul',
author_email='[email protected]',
description='Celery wrapper for web.py framework',
long_description=__doc__,
zip_safe=False,
packages=find_packages(exclude=['examples', 'tests']),
platforms='any',
install_requires=[
'web.py>=0.34',
'celery>=2.3.0',
],
classifiers=[
'Environment:: Web Environment',
'Intended Audience:: Developers',
'License:: OSI Approved:: BSD License',
'Operating System:: OS Independent',
'Programming Language:: Python',
'Programming Language:: Python:: 2.5',
'Programming Language:: Python:: 2.6',
'Programming Language:: Python:: 2.7',
'Topic:: Internet:: WWW/HTTP:: Dynamic Content',
'Topic:: Software Development:: Libraries:: Python Modules',
],
)
Використання каталогаЯк вказано на сайті PyPI, скористатися каталогом можна за допомогою команди pip (за умови, що вона попередньо встановлена):
Або ж просто знайти, завантажити, розпакувати, а потім запуском файлу setup.py встановити потрібний пакет:
В обох випадках будуть автоматично знайдені і встановлені всі залежності для інсталяції.
Те ж саме можна здійснити і за допомогою інших утиліт, наприклад БезпекаКаталог PyPI слугує джерелом інформації для систем оновлення програмного забезпечення на Python, що неминуче ставить питання забезпечення інформаційної безпеки. Система управління бібліотеками Python дозволяє не довіряючим один одному (англ. mutually distrustful) розробникам робити свої бібліотеки доступними для користувачів.[14] На сьогоднішній день в PyPI відсутній механізм захисту виявлення оновлень (англ. update discovery) та процесу інсталяції, але існує TUF (англ. The Update Framework) — прототип каркаса для безпечної роботи з PyPI за допомогою утиліти Зноски
Література
Див. такожПосилання
|