setuptools setup.py可以定义多个包吗?如何单独引用它们?

时间:2015-12-28 06:36:05

标签: python setuptools

我保持Python REST micro framework。它可以通过setuptools安装,可以在PyPi上找到。框架提供的某些功能仅与开发相关,并且在生产环境中不可用。

如果我按如下方式配置setuptools并将其安装在virualenv中,那么事情似乎确实有效。

setup(name='prestans',
      version = __version__,
      install_requires = ['WebOb>=1.5',],
...
)

setup(name='prestans-devel',
      version = __version__,
      install_requires = ['prestans', 'Click>=5.1', 'Jinja2>=2.2.8'],
...
)

我所面临的问题:

  • 这是合法/正确的事吗?或者有更好的方法来解决这个问题吗?
  • 当我使用python setup.py sdist upload发布版本时,这会有效吗? (非常啊,在没有填充我的pypi列表的情况下对此进行测试,除非当然有“我错过的干运行选项”)

感谢您的时间。

1 个答案:

答案 0 :(得分:0)

我不确定这是否正确。事实上,恕我直言,它看起来像一个不那么干净的方式来做它。最好的办法是在setup.py中安装install_requires以进行软件包安装,并在requirements.txt文件中列出重新创建开发环境所需的所有软件包。

您可以查看此链接以明确区分:

http://python-packaging-user-guide.readthedocs.org/en/latest/requirements/