Это, вероятно, не является опасным. Если вы бежите:
python3.5 -c "import argparse; print(argparse.__file__)"
, вы можете увидеть, что arparse.py
установлен с переводчиком имеет приоритет над избыточно установленным argparse
пакетом.
Немного копания (или с использованием пакета pipdeptree) покажет вам, что stevedore
зависит от argparse
. Это просто небрежное программирование (или игнорирование возможных проблем с пропускной способностью). В пакете setup.py
вы можете легко протестировать, если вы используете python < 2.7 или 3.0 < = python < 3.2 и установите только argparse
для этих случаев.
Я бы просто удалил argparse
с вашего setupenv
virtualenv (pip uninstall argparse -y
), на виртуальный вентилятор не повлиял на удаление в моем опыте.
Это на самом деле ошибка в stevedore
, он использует pbr
пакет и поддерживает спецификацию версии питона с помощью environment markers но stevedore
не использует это. Ирония заключается в том, что пример для этого в pbr
является с argparse
, указав в requirements.txt
:
argparse; python=='2.6'
bug report против stevedore
был подан, но хотя исправление было тривиальным, оно не было реализовано несколько версий , Наконец, проблема была набор не будет исправлен, возможно, потому что потерянная поддержка для 2.6 удалила потребность в argparse вообще.