Можно ли заблокировать версии пакетов в Anaconda?

Я установил Anaconda 3 2.3.0 на Windows XP. Предполагается, что это последняя версия anaconda для поддержки Windows XP, так как она содержит Python 3.4.3, а Python 3.4.x - последняя версия Python для поддержки Windows XP.

При установке пакета с

Конда установить

одной из его зависимостей было обновление conda до conda 4.x. Сбой conda 4.x в командной строке при запуске установки conda. Это сделало анаконду непригодной, что я удалил анаконду.

Мой вопрос, возможно ли заблокировать версии пакетов? Для двух вариантов использования:

  • заблокировать и забыть: для пакетов, которые я никогда не хочу, чтобы они обновлялись, мне нужно запустить команду, чтобы заблокировать их один раз, чтобы они никогда не обновлялись как зависимость
  • игнорировать обновление: установить пакет, игнорируя при этом обновление определенного пакета, переданного по имени в этом обновлении.

Если только один из двух вариантов использования возможен или известен или проще, пожалуйста, напишите его как ответ.

3 ответа

Решение

Здесь есть два бита. Во-первых, вы можете предотвратить автоматическое обновление conda, изменив параметр конфигурации. auto_update_conda вFalse:

conda config --set auto_update_conda False

Другой момент - прикрепить пакеты к определенным версиям. Для тех пакетов, которые вы не хотите обновлять, вы можете закрепить версию, добавив строку в файл с именем pinned (вам может понадобиться создать его) в conda-meta каталог. Синтаксис

[Код] ниже [помещен в conda-meta/pinned] заставляет NumPy оставаться в серии 1.7, то есть в любой версии, начинающейся с 1.7, и заставляет SciPy оставаться точно в версии 0.14.2:

numpy 1.7.*
scipy ==0.14.2

Смотрите документацию для получения дополнительной информации.

Пин для conda installзнак равно package=1.0

против.

Пин для pip install(==): package==1.0

Пытаться

pip install <package name==version no*>

например

pip install musdb==0.2.*

Это закрепит ваш пакет

Другие вопросы по тегам