最佳答案
我使用 pip 和 viralenv 来打包和安装一些 Python 库。
我想我正在做的是一个很常见的情况。我是几个库的维护者,我可以为它们显式地指定依赖项。我的一些库依赖于具有传递依赖关系的第三方库,而我对这些依赖关系没有控制权。
我试图实现的是在我的一个库上的 pip install
下载/安装它的所有上游依赖项。我在 pip 文档中纠结的是,如果/如何 要求档案可以自己做到这一点,或者他们真的只是一个使用 install_requires
的补充。
我是否会在所有库中使用 install_requires
来指定依赖项和版本范围,然后只使用需求文件来解决冲突和/或冻结它们以进行生产构建?
让我们假设我生活在一个虚构的世界(我知道,我知道) ,我对上游的依赖是直截了当的,并且保证不会冲突或打破向下兼容。我是否会被迫使用 pip 需求文件,还是仅仅让 pip/setuptools/distribution 安装基于 install_requires
的所有东西?
这里有很多类似的问题,但是我找不到任何一个像什么时候使用一个或者另一个或者两个和谐地一起使用这样基本的问题。