为什么 conda 尝试使用 --no-update-dependencies 更新包?
Why does conda try to update packages with --no-update-dependencies?
通常当我尝试安装一个新包时,conda 也想更新其他包,即使我已经添加了 --no-update-dependencies 开关。更新似乎是 "unnecessary" - 大多数时候只有版本号的最后一部分发生了变化。
今天我想安装 mpld3 包并且 conda 想将我的 python 包从版本 3.4.4-2 更新到 3.4.4-4,即使我已经添加了 --no-update -依赖开关。
如何让 conda 安装 mpld3 包而不影响我的其他包?
C:\...>conda install -p pyenv --no-update-dependencies mpld3
Fetching package metadata: ....
Solving package specifications: ...........
Package plan for installation in environment C:\...\pyenv:
The following packages will be downloaded:
package | build
---------------------------|-----------------
vs2010_runtime-10.00.40219.1| 0 1.1 MB
python-3.4.4 | 4 31.7 MB
mpld3-0.2 | py34_0 123 KB
------------------------------------------------------------
Total: 33.0 MB
The following NEW packages will be INSTALLED:
mpld3: 0.2-py34_0
vs2010_runtime: 10.00.40219.1-0
The following packages will be UPDATED:
python: 3.4.4-2 --> 3.4.4-4
Proceed ([y]/n)?
tldr;
别担心,您的软件包不会被更新,只会更新它们的内部版本号,应该是无害的。
一些解释
正在更新的是 build number,而不是每个安装包的版本。
如您所见,它正在安装 vs2010_runtime
,这是由于 conda 更新了其包是如何使用功能构建的。由于您有 Python 3.4(使用 Visual Studio 2010 构建),它正在安装 VS 2010 运行时。如果您正在安装 Python 3.5.
,它将安装 VS 2015 运行时
Build numbers/strings 不应该破坏任何人,因为它们应该是对该包的构建过程的修复(例如:您向编译添加了一个您不打算添加的标志)。
存在 --no-update-dependencies
时 conda 是否应该更新软件包(相同版本,不同内部版本号)是有争议的,因为您最终可能会安装错误。
只想提一下,这些选项在新的 conda 版本中已弃用。比如conda 4.6.7版本,应该使用"conda install --no-deps yourpackage"
通常当我尝试安装一个新包时,conda 也想更新其他包,即使我已经添加了 --no-update-dependencies 开关。更新似乎是 "unnecessary" - 大多数时候只有版本号的最后一部分发生了变化。
今天我想安装 mpld3 包并且 conda 想将我的 python 包从版本 3.4.4-2 更新到 3.4.4-4,即使我已经添加了 --no-update -依赖开关。
如何让 conda 安装 mpld3 包而不影响我的其他包?
C:\...>conda install -p pyenv --no-update-dependencies mpld3
Fetching package metadata: ....
Solving package specifications: ...........
Package plan for installation in environment C:\...\pyenv:
The following packages will be downloaded:
package | build
---------------------------|-----------------
vs2010_runtime-10.00.40219.1| 0 1.1 MB
python-3.4.4 | 4 31.7 MB
mpld3-0.2 | py34_0 123 KB
------------------------------------------------------------
Total: 33.0 MB
The following NEW packages will be INSTALLED:
mpld3: 0.2-py34_0
vs2010_runtime: 10.00.40219.1-0
The following packages will be UPDATED:
python: 3.4.4-2 --> 3.4.4-4
Proceed ([y]/n)?
tldr;
别担心,您的软件包不会被更新,只会更新它们的内部版本号,应该是无害的。
一些解释
正在更新的是 build number,而不是每个安装包的版本。
如您所见,它正在安装 vs2010_runtime
,这是由于 conda 更新了其包是如何使用功能构建的。由于您有 Python 3.4(使用 Visual Studio 2010 构建),它正在安装 VS 2010 运行时。如果您正在安装 Python 3.5.
Build numbers/strings 不应该破坏任何人,因为它们应该是对该包的构建过程的修复(例如:您向编译添加了一个您不打算添加的标志)。
存在 --no-update-dependencies
时 conda 是否应该更新软件包(相同版本,不同内部版本号)是有争议的,因为您最终可能会安装错误。
只想提一下,这些选项在新的 conda 版本中已弃用。比如conda 4.6.7版本,应该使用"conda install --no-deps yourpackage"