Аналогично https://stackoverflow.com/questions/12518499/pip-ignores-dependency-links-in-setup-py
Я изменяю фейкер в ожидании открытого PR, который я открыл с помощью валидаторов , и я хочубыть в состоянии протестировать новую зависимость, которая у меня будет.
setup(
name='Faker',
...
install_requires=[
"python-dateutil>=2.4",
"six>=1.10",
"text-unidecode==1.2",
],
tests_require=[
"validators@https://github.com/kingbuzzman/validators/archive/0.13.0.tar.gz#egg=validators-0.13.0", # TODO: this will change # noqa
"ukpostcodeparser>=1.1.1",
...
],
...
)
python setup.py test
отказывается устанавливать версию 0.13.0.
Если я переместлю строку проблемы до install_requires=[..]
(которого НЕ ДОЛЖНО быть)
setup(
name='Faker',
...
install_requires=[
"python-dateutil>=2.4",
"six>=1.10",
"text-unidecode==1.2",
"validators@https://github.com/kingbuzzman/validators/archive/0.13.0.tar.gz#egg=validators-0.13.0", # TODO: this will change # noqa
],
tests_require=[
"ukpostcodeparser>=1.1.1",
...
],
...
)
- с использованием
pip install -e .
все отлично работает - устанавливается правильная версия. - с использованием
python setup.py develop
такая же проблема.
Я предполагаю, что setuptools / distutils делают что-то странное - pip
, кажется, решает проблему.Мой вопрос: как мне это исправить?
Проблемный код и ссылки можно найти здесь:
Самый простой способ увидеть проблему под рукой:
docker run -it --rm python:3.7 bash -c "git clone https://github.com/kingbuzzman/faker.git; cd faker; pip install -e .; python setup.py test"
ОБНОВЛЕНИЕ: Поскольку это было исправлено, проблема больше не будет повторяться - все тесты пройдут