Начало работы с setuptools и setup.py
Last updated
Was this helpful?
Last updated
Was this helpful?
Оригинал статьи Andrew Carter: от 11-2009.
Статья очень сильно устарела, однако некоторые моменты можно использовать для ознакомления.
setuptools - это богатая и сложная программа. В этом руководстве основное внимание уделяется минимальным основам, необходимым для запуска средств настройки, чтобы вы могли:
Зарегистрировать свой пакет на pypi.
Собрать egg, исходный код и "распространяемые файлы" оконной программы установки.
Загрузить эти «распространяемые файлы» в pypi.
Чтобы установить инструменты настройки, посетите и следуйте инструкциям для своей операционной системы. Кроме того, посетите , чтобы получить дополнительные инструкции по установке инструментов настройки.
В настоящее время (по состоянию на ноябрь 2009 г.) setuptools довольно просто установить для Python версий 2.3–2.6.
Если у вас возникли проблемы с настройкой инструментов настройки для вашей платформы, вы можете проверить сценарий «bootstrap» setuptools по адресу .
Вы можете запустить это так:
и он установит setuptools для любой версии Python. Например, в Windows:
установит setuptools для вашего дистрибутива python24.
Все функции, которые могут быть включены в файл setup.py
, выходят за рамки этого простого руководства. Я просто сосредоточусь на очень простом и распространенном формате, необходимом для переноса этого проекта на pypi.
Содержимое setup.py
- это чистый Python:
Структура каталога пока должна выглядеть так:
Используя простую функцию read
, ее легко включить в ключевое слово long_description для функции setuptools.setup ()
.
Пример этого веб-сайта:
Основное использование setup.py:
Чтобы увидеть все команды, введите:
Теперь, после регистрации, когда вы запускаете команды setup.py
, которые взаимодействуют с pypi, вам нужно будет каждый раз вводить свое имя пользователя и пароль.
Чтобы обойти это, поместите файл .pypirc
в свой каталог $HOME в Linux. В Windows вам необходимо установить переменную окружения HOME, чтобы она указывала на каталог, в котором находится этот файл.
Структура файла .pypirc
довольно проста:
С вашими setup.py
и .pypirc
зарегистрировать проект довольно просто. Просто введите:
Я бы сказал больше, но это так просто.
Мы будем использовать три основных команды setup.py
:
bdist_egg: создает файл egg. Это то, что необходимо, чтобы кто-нибудь мог использовать easy_install your_project
.
bdist_wininst: это создаст .exe
, который установит ваш проект на машине Windows.
sdist: это создает дистрибутив с исходным кодом, который кто-то может напрямую загрузить и запустить python setup.py
.
Вы можете запускать эти команды сами по себе и просто создавать файлы, но не загружать их. Однако в этом проекте мы всегда объединяем эти команды с директивой upload, которая будет создавать и выгружать необходимые файлы.
Этот проект был построен на машине с Windows. Чтобы лучше понять, как все это работает, и другие параметры, используемые при использовании setup.py
, давайте просто посмотрим на файл .bat
, который я использую для создания пакета и загрузки его в pypi:
Для Linux это были бы почти те же команды, просто меняя каталоги, чтобы указывать на правильные версии python.
Хорошая идея, украденная с , - включить текстовый файл README, в которой описание вашего кода. Это будет видно, когда кто-то, скажем, клонирует ваше репо.
Действительно хороший веб-сайт - , на котором перечислены все классификаторы, которые вы можете использовать в вызове установки.
Чтобы взаимодействовать с pypi, вам сначала необходимо настроить учетную запись. Перейдите на и нажмите Register.
Кроме того, вы часто хотите подписать файлы, используя шифрование gpg. Посетите в Linux или в Windows, чтобы установить это программное обеспечение.
Ключевым моментом здесь является то, что вам нужно запускать эти команды с той версией python, которую вы хотите поддерживать. Мы расскажем об этом в разделе «» ниже.