Почему токсик сталкивается с конфликтом версий Pytest? - PullRequest
0 голосов
/ 12 апреля 2019

Я собираюсь попросить о помощи, потому что ответы на очень похожие вопросы [1] , [2] не могут помочь мне решить проблему.

tox работает без ошибок в моей локальной среде, но в travis ci с теми же версиями tox, pytest и т. Д. Выдает следующее исключение:

pluggy.manager.PluginValidationError: Plugin 'removestalebytecode' could not be loaded: (pytest 4.4.0 (XXX/.tox/py35/lib/python3.5/site-packages), Requirement.parse('pytest<3.10'))!

Откуда pytest 4.4.0 от?
pytest --version показывает версию 3.7.4, которая была явно установлена ​​в pip install 'pytest~=3.7.0' --force-reinstall travis ci setup .

1 Ответ

0 голосов
/ 23 апреля 2019

Откуда взялся pytest 4.4.0?

tox установил его полностью независимо от pip install 'pytest~=3.7.0' --force-reinstall

Это можно решитьпривязывая tox среду к конкретной pytest версии в tox.ini

[py]
deps=
    pytest<3.10
    ...

Это не решит проблему с

pluggy.manager.PluginValidationError: Plugin 'removestalebytecode' could not be loaded: (pytest 4.4.0 (XXX/.tox/py35/lib/python3.5/site-packages), Requirement.parse('pytest<3.10'))!

, потому что в текущей версии 3.0.1 *Плагин 1020 * pytest-remove-stale-bytecode не работает с py.test 3.10.

Для решения проблемы tox.ini следует ограничить версиюиз pytest-remove-stale-bytecode

[py]
deps=
    ...
    pytest-remove-stale-bytecode<3.0.1
...