Что делает конда, когда "решающая среда"

Всякий раз, когда я запускаю conda install/remove/update <package>, он некоторое время говорит мне об "решении среды", прежде чем рассказывать мне список вещей, которые он собирается загрузить/установить/обновить. Предположительно, он ищет зависимости для <package>, но почему он иногда удаляет пакеты после выполнения этой операции? Например, когда я пытался установить Mayavi, он решил удалить Anaconda Navigator.

Кроме того, он не предоставляет возможности выполнять только подмножество предлагаемых операций. Есть ли способ указать, что я не хочу, чтобы пакет был удален?

Ответ 1

Вы можете добавить --debug к команде conda и посмотреть вывод с консоли (или терминала). Например, введите conda update --debug numpy. Из выходных данных видно, что клиент запрашивает repodata.json из списка каналов и выполняет некоторые локальные вычисления на этапе Solving Environment.

Ответ 2

В качестве примечания по поводу шага "Solving Environment"...
Отсутствие прав администратора может повлиять на то, где вы можете устанавливать пакеты Python.

Я заметил, что мои установки зависают на этапе "Solving Environment" и никогда не завершаются при попытке установить пакеты, когда вы вошли в систему как администратор.

Переход на администратор был возможен для меня на машине, на которой я застрял, поэтому я просто сделал это, и это решило проблему.

Комментатор объясняет обходной путь, когда это невозможно.