Mohamed El-Nakeep
Mohamed El-Nakeep

Reputation: 6718

Is it possible to lock versions of packages in Anaconda?

I installed Anaconda 3 2.3.0 on Windows xp. It is supposed to be the last version of anaconda to support windows xp as it contains python 3.4.3, and python 3.4.x is the last version of python to support windows xp.

When installing a package with

conda install

,one of its dependencies was updating conda to conda 4.x. conda 4.x crashed in the commandline when running conda install . This made anaconda unusable that i uninstalled anaconda.

My question, is it possible to lock versions of packages ? For the two use cases:

If only one of the 2 use cases is possible or is known or is easier, please write it as answer.

Upvotes: 26

Views: 19588

Answers (3)

mirekphd
mirekphd

Reputation: 6871

Pin for conda install (=): package=1.0

vs.

Pin for pip install (==): package==1.0

Upvotes: 1

Joaquim
Joaquim

Reputation: 440

Try

pip install <package name==version no*>

for instance

pip install musdb==0.2.*

That would pin your package

Upvotes: -2

darthbith
darthbith

Reputation: 19665

There are two bits to this. First, you can prevent conda from auto-updating by changing the configuration option auto_update_conda to False:

conda config --set auto_update_conda False

The other bit is to pin packages to certain versions. For those packages you don't want to update, you can pin the version by adding a line to a file called pinned (you might need to create it) in the environment's conda-meta directory. The syntax is

[The code] below [placed in conda-meta/pinned] forces NumPy to stay on the 1.7 series, which is any version that starts with 1.7, and forces SciPy to stay at exactly version 0.14.2:

numpy 1.7.*
scipy ==0.14.2

See the documentation for more information.

Upvotes: 41

Related Questions