为何pip可安装索引缺失的包?如何查看这类包的版本?
关于pip安装nightly包但无法用index versions查看版本的问题解答
问题原因
你遇到的情况是因为tb-nightly、tf-nightly-macos这类nightly包属于预发布版本,而pip index versions命令默认只检索PyPI索引中的稳定版包信息。PyPI的simple索引(即你使用的https://pypi.org/simple)默认不会展示预发布版本的条目,所以执行pip index versions时会提示找不到匹配的发行版;但pip install在未指定版本的情况下,会自动查找包括预发布版在内的所有可用版本,因此能成功安装这些nightly包。
解决办法
以下几种方法可以查看这类包的所有可用版本:
使用
--pre参数扩展检索范围:给pip index versions加上--pre参数,就能让pip同时检索预发布版本。执行命令如下:pip index versions --pre tb-nightly pip index versions --pre tf-nightly-macos模拟安装查看版本信息:通过
--dry-run模拟安装,结合--verbose输出详细日志,日志中会包含该包所有可安装的版本列表。命令示例:pip install --dry-run --verbose tb-nightly直接请求包的索引地址:用curl或浏览器访问包的simple索引路径,返回内容中会列出所有可用版本的下载链接,从中可提取版本号。比如执行:
curl https://pypi.org/simple/tb-nightly/
内容的提问来源于stack exchange,提问作者profPlum
相关产品推荐
相关产品推荐

