Flask 1.0.2 устанавливает минимальные версии для своих зависимостей.Ваш файл requirements.txt
закрепил эти зависимости в несовместимых версиях.Обновите файл requirements.txt
.
В частности, ваш вывод pip
:
Collecting Jinja2==2.9.6 (from -r requirements.txt (line 3))
[...]
Collecting Werkzeug==0.12.2 (from -r requirements.txt (line 5))
сообщает вам, какие строки нужно обновить в этом файле.
Сообщение об ошибке сообщаетВы, каковы минимальные версии:
---> flask 1.0.2 has requirement Jinja2>=2.10, but you'll have jinja2 2.9.6 which is incompatible.
---> flask 1.0.2 has requirement Werkzeug>=0.14, but you'll have werkzeug 0.12.2 which is incompatible.
, поэтому вы должны, по крайней мере, изменить эти строки, чтобы использовать эти конкретные минимальные выводы версии.
Я быпредлагаю вам избегать использования точных выводов версий для каждого пакета в вашем файле requirements.txt
и вместо этого только закреплять ваши самые важные пакеты верхнего уровня.Прикрепите Flask, но не зависимости, и оставьте pip
, чтобы найти совместимые версии этих зависимостей;Вы можете просто удалить зависимости из файла requirements.txt
в целом.
Еще лучше, переключитесь на Pipenv вместо requirements.txt
файла, используйте его для указания зависимостей верхнего уровня и оставьте версии закрепления зависимостей на Pipenv
.Это дает вам лучшее из обоих миров;файл конфигурации для указания собственных зависимостей проекта (Pipfile
) и отдельный файл с закрепленными версиями для текущей настройки (Pipfile.lock
).