Как отправить пакет в PyPi?
Я написал небольшой модуль, и я хотел бы знать, каковы основные шаги для его упаковки, чтобы отправить его pypi
- Какова иерархия файлов?
- как я могу назвать файлы?
- Должен ли я использовать distutils для создания PKG-INFO?
- Где я должен включать мою документацию (сделанную с помощью sphinx)?
Ответы
Ответ 1
Я рекомендую прочитать Руководство автостопом по упаковке. В частности, вы должны посмотреть раздел "Быстрый старт" , в котором описывается, как:
- Разместите свой проект
- Опишите свой проект
- Создайте свой первый выпуск
- Зарегистрируйте свой пакет с помощью индекса пакета Python (PyPI)
- Загрузите свою версию, затем возьмите полотенце и сохраните Вселенную!
Вы также должны посмотреть Текущее состояние упаковки в Введение в раздел упаковки, поскольку это помогает распутать некоторые путаницы вокруг setuptools, distutils, distutils2 и распространять.
Обновить Re: Как назвать файлы
Выдержка из PEP8, которая отвечает на ваш вопрос о том, как назвать файлы:
Модули должны иметь короткие, все строчные имена. Подчеркивания могут использоваться в имени модуля, если это улучшает читаемость. Пакеты Python также должны иметь короткие имена всех строчных букв, хотя использование подчеркиваний не рекомендуется.
Так как имена модулей сопоставляются с именами файлов, а некоторые файловые системы не чувствительны к регистру и обрезают длинные имена, важно, чтобы имена модулей были достаточно короткими - это не будет проблемой для Unix, но это может быть проблемой, когда код переносится на старые версии для Mac или Windows или DOS.
Ответ 2
пример всегда лучший способ увидеть, как это сделать:
http://packages.python.org/an_example_pypi_project/
Ответ 3
Возможно, этот CheeseShopTutorial поможет вам. Оттуда:
Отправка пакетов в пакет Индекс
Если у вас есть некоторые модули или пакеты Python, которые вы хотели бы поделиться с сообществом Python, мы хотели бы включить их в Индекс пакета Python! Во-первых, если вы этого не сделали, вам захочется чтобы ваш проект был организован. Вы можете следовать рекомендациям в ProjectFileAndDirectoryLayout. После этого вы захотите прочитать Документация Python относительно создания дистрибутивов: http://docs.python.org/distutils/index.html.
Вы также можете проверить Написание пакета в Python от Tarek Ziadé из книги Tarek "Программирование программистов на языке программистов", где вопросы о разработке и распространении подробно рассмотрены
Ответ 4
В ответе Мэтью Ранкина рассказывается, как организовать иерархию вашего файла проекта, но мне приходится искать команды для выполнения каждый раз, когда я хочу обновить проект на PyPI. Итак, вот они:
Как описано на сайте PyPi: