Подтвердить что ты не робот

Почему conda обновляет некоторые библиотеки

Для m, в OS X, conda update --all часто понижает библиотеки - вместе с обновлением многих.

Это обычное дело? Или что-то возможно в моей настройке?

В начале этого года это была подушка в течение многих месяцев.

Удивительно, но сегодня это было несколько библиотек, связанных с HDF5, numba и llvmlite.

Итак, conda update numba возвращает numba в самую последнюю версию и т.д. с другими 8 библиотеками, но почему это все равно conda update --all?

4b9b3361

Ответ 1

Это проблема совместимости. Anaconda - это стабильный набор пакетов. Когда вы обновляете Anaconda, вы обновляетесь до этого стабильного списка.

Однако при обновлении отдельных пакетов они могут вызывать проблемы несовместимости с остальной частью дистрибутива Anaconda, поэтому они не считаются стабильными. Поэтому, когда вы используете conda update --all, вы получаете последний стабильный дистрибутив Anaconda, который может иметь или не иметь версию отдельного пакета, который вам нужен.

Смотрите здесь: https://github.com/ContinuumIO/anaconda-issues/issues/39

Изменить: это поведение изменилось. Теперь он пытается увеличить версию всех пакетов (за исключением Python между основной/младшей версией), так что никакие пакеты не будут несовместимы друг с другом.

Смотрите здесь: http://continuum.io/blog/advanced-conda-part-1#conda-update-all

Ответ 2

Некоторые библиотеки зависят от конкретных более низких версий для целей совместимости. conda update --all будет пытаться обновлять пакеты как можно больше, но всегда поддерживает совместимость с ограничениями версии в каждом метаданных пакета. Обратите внимание, что пакет anaconda не вступает в игру здесь (при условии, что у вас есть последняя версия conda), потому что conda update --all игнорирует его.

К сожалению, не всегда легко понять, что зависит от чего, но есть некоторые трюки. Один из способов заключается в pin каждом пакете в нужную вам версию и conda update --all. Он должен генерировать неудовлетворительный намек, который даст вам представление о том, что вызывает проблему. Другим способом является поиск метаданных пакета .

Для numba я могу предположить, что проблема, вероятно, связана с numbapro. Есть несколько пакетов, которые зависят от hdf5. Вы можете использовать conda info <package> для просмотра зависимостей пакета (например, conda info h5py).