假设您已经发布了两个预发行版:
package 0.0.1.dev0
package 0.0.2.dev0
我在setup.py
中的install_requires
部分指出:
[
'package>=0.0.2,<1.0.0'
]
现在,当我运行pip install . --upgrade --pre
时,我得到一个错误:
ERROR: Could not find a version that satisfies the requirement package<1.0.0,>=0.0.2 (from versions: 0.0.1.dev0, 0.0.2.dev0) ERROR: No matching distribution found for package<1.0.0,>=0.0.2
我做错了什么?--pre
标志不是应该告诉pip匹配预发布版本吗
摘要
pip
pre
选项指示pip包含潜在的匹配预发布版本和开发版本,但它不会更改版本匹配的语义由于预发行版
0.0.2.dev0
比稳定发行版0.0.2
旧,因此pip在搜索至少与稳定发行版0.0.2
一样新的包时会正确报告错误说明
混淆的关键点是关于pip
pre
选项,它被记录为:问题的前提是
pre
选项应该更改包版本匹配语义,以便在与稳定版本匹配时忽略预发布版本后缀进一步澄清,考虑兼容释放操作符<强> ^ {< CD7>}。PEP 440第Compatible release节部分规定:
这个例子清楚地表明后缀被忽略
以下要求与
0.0.2.dev0
不匹配:然而,这个例子确实匹配稳定释放
0.0.2
:相关问题 更多 >
编程相关推荐