【问题标题】:How does a "pip --upgrade" know which files to replace and which to leave alone? Or does it delete and reinstall the entire package being upgraded?“pip --upgrade”如何知道要替换哪些文件以及保留哪些文件?或者它是否删除并重新安装正在升级的整个软件包?
【发布时间】:2020-07-07 15:38:41
【问题描述】:

几乎是标题所要求的。最近我们遇到了麻烦,yum install python-urllib3 正在获取旧版本,pip install -U urllib3 会更新其中的一部分,但不是全部,poolmanager.py 中的一行会尝试在exceptions.py 中导入一个类不存在(大概是因为 pip 没有意识到它也需要更新该文件)。 pip 如何决定文件是否需要升级?

【问题讨论】:

  • 在安装新获得的不同版本的包之前,会先卸载之前的版本

标签: python pip


【解决方案1】:

您遇到的可能是冲突。尝试使用pip uninstall python-urllib3 完全删除软件包并重新安装。另外,请参考pip用户指南升级Pip User Guide

pip install --upgrade 现在有一个 --upgrade-strategy 选项,用于控制 pip 如何处理依赖项升级。支持 2 种升级策略:

  • 渴望:升级所有依赖项,无论它们是否仍然满足新的父要求
  • only-if-needed:仅当依赖项不满足新的父要求时才升级它

默认策略是only-if-needed,他们从版本>=10.0更改了它

【讨论】:

    猜你喜欢
    • 2017-07-18
    • 1970-01-01
    • 2016-11-12
    • 2014-02-20
    • 1970-01-01
    • 2021-07-02
    • 1970-01-01
    • 2010-12-19
    • 2012-09-04
    相关资源
    最近更新 更多