Как указать зависимости при создании файла setup.py для пакета python

В документе python для "Написание файла Setupscript ( http://docs.python.org/2/distutils/setupscript.html) упоминается, что зависимости можно указать в разделе

2.4. Отношения между дистрибутивами и пакетами

[...] Эти отношения могут быть заданы с использованием аргументов ключевого слова для функция distutils.core.setup().

Зависимости от других модулей и пакетов Python могут быть указаны для задания аргумента ключевого слова require(). Значение должно быть список строк. Каждая строка указывает пакет, который требуется, и, возможно, какие версии являются достаточными.

Чтобы указать, что требуется любая версия модуля или пакета, строка должна состоять полностью из имени модуля или пакета. Примеры включая "mymodule" и "xml.parsers.expat".

[...]

Учитывая эту довольно скудную информацию без примера, я просто хочу убедиться, что я делаю все правильно. Кроме того, я не могу найти этот параметр requires в описании API http://docs.python.org/2/distutils/apiref.html#distutils.core.setup

Так оно сделано, например,

setup(name='MyStuff',
      version='1.0',
      requires='os, sys, progressbar',
      [...]

Я надеюсь, что кто-то может дать мне немного больше понимания! Спасибо!

EDIT:

Чтобы обратиться к distutils.core, задайте настройку, просто можно сделать

try:
    from setuptools import setup
except ImportError:
    from distutils.core import setup

Имеет ли смысл?

Ответы

Ответ 1

Игнорировать distutils. Если вы хотите создать пакет, который задает зависимости для инструмента, такого как pip, чтобы выйти и найти для вас, вам нужно создать свой setup.py из setuptools.

Зависимости

setuptools перечислены в install_requires, который принимает список:

setup(name='MyStuff',
      version='1.0',
      install_requires=['progressbar'],
      # ...
)

которые должны быть самими дистрибутивами. os и sys являются модулями, входящими в состав Python, и их не следует указывать.