我有一个requirements.txt文件,我正在使用Travis-CI.看来愚蠢复制中都要求requirements.txt和setup.py,所以我希望到一个文件句柄传递给install_requires在kwarg setuptools.setup.
这可能吗?如果是这样,我该怎么做呢?
这是我的requirements.txt档案:
guessit>=0.5.2
tvdb_api>=1.8.2
hachoir-metadata>=1.3.3
hachoir-core>=1.3.3
hachoir-parser>=1.3.4
Run Code Online (Sandbox Code Playgroud) 有时我从下载python源代码,github不知道如何安装所有依赖项.如果没有requirements.txt文件,我必须手工创建.问题是:鉴于python源代码目录是否可以requirements.txt从导入部分自动创建?
我正在使用带有virtualenv的pip来打包和安装一些Python库.
我想我正在做的是一个很常见的场景.我是几个库的维护者,我可以明确地指定依赖项.我的一些库依赖于第三方库,这些库具有我无法控制的传递依赖性.
我想要实现的是让pip install我的一个库下载/安装它的所有上游依赖项.我在pip文档中遇到的问题是,需求文件是否/如何自行完成,或者它们实际上只是对使用的补充install_requires.
我是否会install_requires在所有库中使用指定依赖项和版本范围,然后仅使用需求文件来解决冲突和/或冻结它们以进行生产构建?
让我们假装我生活在一个想象的世界(我知道,我知道),我的上游依赖是直截了当的,并保证永远不会冲突或破坏向后兼容性.我是否会被迫使用pip要求文件或者只是让pip/setuptools/distribute安装所有内容install_requires?
这里有很多类似的问题,但我找不到任何与使用其中一个或者和谐地使用它们一样基本的问题.
我正在尝试requirements.txt为某人生成复制我的环境。您可能知道,标准方法是
pip freeze > requirements.txt
Run Code Online (Sandbox Code Playgroud)
我注意到这将列出所有包,包括已安装包的依赖项,这使得这个列表变得不必要。然后我浏览了一下,发现pip-chill它允许我们只列出requirements.txt.
现在,根据我的理解,当有人尝试使用 复制环境时pip install -r requirements.txt,这将自动安装已安装软件包的依赖项。
如果这是真的,这意味着使用pip-chill而不是pip生成requirements.txt. 我的问题是,是否还有其他风险可以使用pip-chill我在这里缺少的已安装软件包的依赖项?