提问人:amin_nejad 提问时间:12/15/2020 更新时间:12/15/2020 访问量:440
如何生成python pip依赖范围?
How to generate python pip dependency ranges?
问:
我正在开发一个 python 库,我们目前正在使用它来固定依赖项。pip-tools
例如,基本:requirements.in
black
pandas
torch
在此文件上运行将生成如下所示的内容(此处已简化):pip-compile
requirements.txt
black==20.8b1 # via -r requirements.in
click==7.1.2 # via black
numpy==1.19.4 # via pandas, torch
pandas==1.1.5 # via -r requirements.in
pathspec==0.8.1 # via black
pytz==2020.4 # via pandas
regex==2020.11.13 # via black
torch==1.7.1 # via -r requirements.in
我的问题是,由于最终用户对其他库缺乏灵活性,因此不建议为将在 pypi 上公开的包固定版本。在这些情况下,指定依赖关系范围似乎是常见的做法,例如
numpy >=1.18.0, <1.19.0
pandas >=1.0.0
etc.
我的问题是,在给定上述情况的情况下,是否有任何方法可以自动生成这些依赖范围?我想使用现有的依赖项解析工具来生成与所有库兼容的最低和最高版本应该相对容易。(任何未指定任何版本的库都可以保持原样。requirements.in
我还没有找到任何可以做这样的事情的工具。其他库的维护者是否手动执行此任务?我知道我上面描述的方法仍然需要对没有交叉依赖关系的库进行一些手动干预,但在大多数情况下(当然在我的情况下),这应该可以完成繁重的工作。requirements.in
答: 暂无答案
评论
requirements.in
pip-tools
pip-compile --upgrade