¿Por qué conda intenta actualizar los paquetes con –no-update-dependencies?

A menudo, cuando bash instalar un nuevo paquete, conda también quiere actualizar otros paquetes, aunque haya agregado el modificador –no-update-dependencies. Las actualizaciones parecen ser “innecesarias”, como la mayoría de las veces, solo la última parte del número de versión ha cambiado.

Hoy quise instalar el paquete mpld3 y conda quiere actualizar mi paquete de Python de la versión 3.4.4-2 a 3.4.4-4, aunque he agregado el modificador –no-update-dependencies.

¿Cómo puedo hacer que Conda instale el paquete mpld3 sin tocar mis otros paquetes?

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;

No se preocupe por eso, sus paquetes no se están actualizando, solo sus números de comstackción, que deberían ser inofensivos.

alguna explicación

Lo que se está actualizando es el número de comstackción , no la versión de cada paquete instalado.

Como puede ver, está instalando el tiempo de vs2010_runtime , esto se debe a que Conda actualiza cómo se construyeron sus paquetes utilizando características. Dado que tiene Python 3.4 (que se construye con Visual Studio 2010) está instalando el tiempo de ejecución de VS 2010. Instalaría el tiempo de ejecución de VS 2015 si estuviera instalando Python 3.5.

Los números / cadenas de comstackción no deberían romper a nadie porque se supone que son arreglos para el proceso de comstackción de ese paquete (por ejemplo: agregaste una marca a la comstackción que no pretendías).

Es discutible si Conda debería actualizar los paquetes (la misma versión, diferentes números de comstackción) cuando --no-update-dependencies está presente porque podría terminar con una instalación incorrecta.