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

Can setuptools setup.py define multiple packages and how do I reference them individually?

我维护一个Python REST micro framework. It's installable via setuptools and is available on 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'],
...
)

我的问题区:

感谢您的宝贵时间。

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

您可以查看此 link 以明确区分:

https://python-packaging-user-guide.readthedocs.io/discussions/install-requires-vs-requirements