Тестирование сборки Anaconda после обновления пакетов - PullRequest
0 голосов
/ 09 октября 2018

Я использую conda update --all для обновления своих пакетов.Недавно я столкнулся с ошибкой сборки Anaconda, опубликованной на Ошибка при попытке обновить и использовать модуль scipy в Anaconda .Кажется, теперь проблема была исправлена.Есть ли способ, я могу проверить все модули один за другим, импортируя их и удаляя их?Я запрашиваю это, потому что заметил, что если импорт не работает, я трачу много времени на выяснение зависимости, а затем на пакет, который вызывает это.Например, несколько минут назад я обнаружил, что PyCharm 2018.2.4 ломается с последней версией matplotlib (3.0.0).Следовательно, после запуска conda update --all может быть полезно запустить некоторый тип тестового сценария, чтобы убедиться, что все пакеты действительно работают - то есть импортируемые.

Я провел небольшое исследование по этой теме и нашел три источника.

Во-первых, Анаконда предлагает run_test.py (Источник: https://conda.io/docs/user-guide/tasks/build-packages/recipe.html). Однако, будучи новичком в мире Python, я не уверен, как запустить скрипт в терминале Анаконды.

Во-вторых, я обнаружил: https://conda.io/docs/user-guide/install/test-installation.html. Однако, это просто говорит мне версию пакета. Мне не интересна версия. Мне нужно знать, все ли пакеты импортируются правильно.

Наконец, Я обнаружил, что есть метод для запуска тестового скрипта для всех пакетов по адресу https://anaconda -installer.readthedocs.io / en / latest / testing.html . Однако я не уверен, как я могу запуститьmake в терминале Anaconda. Раньше я использовал make давным-давно, когда работал над gcc в среде Unix. Будучи новичком в Python, я не уверен, что делать с этим.

IБуду признателен за любые мысли или любой тестовый сценарий, который поможет нам проверить две вещи:

a) все ли пакеты установлены

b) пакеты действительно импортируются;Если импорт пакета завершится неудачно, сценарий должен завершиться красивым сообщением об ошибке, в котором будет указан источник (пакет), в котором произошел сбой импорта.

...