【问题标题】:Unable to use --extra-index-url with pip after upgrading to 18.1升级到 18.1 后无法将 --extra-index-url 与 pip 一起使用
【发布时间】:2019-05-27 11:48:56
【问题描述】:

我创建了自己的 python wheel 包并将其托管在本地,以便我可以使用 --extra-index-url 标志通过 pip 安装它,如下所示:

pip install --extra-index-url http://10.0.0.100:5000/ MyPackage --trusted-host 10.0.0.100

我安装了几个依赖项,并且使用 pip 版本 9.0.1 这似乎工作正常;它最初会在提供的索引处查找依赖项,会收到 404 错误,因为我只托管我自己的包,但随后会尝试在默认索引 url https://pypi.org/simple 中查找它。

升级到 pip 18.1 后,它会在初始 404 错误上引发异常并取消整个安装:

HTTPError: 404 Client Error: NOT FOUND for url: http://10.0.0.100:5000/urllib3/

我做错了什么还是这是预期的功能?

最终我希望能够在本地托管单个包,使用 pip 下载并安装它,但从默认 pip 存储库中提取任何依赖项。还有另一种方法可以做到这一点吗?我读过的所有内容都说 --extra-index-url 是实现此目的的方法,但它似乎不再起作用...

更新:

我试图在另一个系统上复制它,并在使用 pip 版本 9.0.1 时遇到了同样的问题,所以升级似乎不是根本原因。奇怪的是,在这个其他系统上升级到 18.1 后它运行良好......

最终,我只需使用 easy_install 卸载并重新安装 pip 即可使原始系统正常工作。我仍然不确定潜在的问题可能是什么......

为了回答评论,为此我使用 Flask-AutoIndex 来托管文件夹的内容。不像您的解决方案那么简单,但可以完成工作:

from flask import Flask
from flask_autoindex import AutoIndex

app = Flask(__name__)
AutoIndex(app, browse_root='packages')

if __name__ == '__main__':
    app.run('0.0.0.0', debug=True, port=5005, threaded=True)

【问题讨论】:

  • 您使用的是什么自定义 PyPI 服务器?使用local repository 时能否重现该问题?

标签: python pip setuptools


【解决方案1】:

我在尝试使用 pip 18.1 安装另一个库时遇到了同样的问题。升级到 pip 19.2.3 解决了这个问题。

【讨论】:

    猜你喜欢
    • 2021-07-19
    • 1970-01-01
    • 2016-05-01
    • 1970-01-01
    • 2015-12-08
    • 2017-05-01
    • 2017-06-30
    • 1970-01-01
    • 2019-06-17
    相关资源
    最近更新 更多