Можно ли заблокировать версии пакетов в 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.*
Это закрепит ваш пакет