pipenv install устанавливает зависимости каждый раз / Pycharm их не распознает - PullRequest
1 голос
/ 30 апреля 2019

У меня возникли различные проблемы с настройкой pipenv (другой вопрос здесь различия между пользователями даже после использования Pipfile и Pipfile.lock с явными версиями ), и я только что заметил что-то еще, что кажется странным.

Оказывается, в папке моего проекта (с созданием Pipfile и Pipfile lock, с выполнением начального pipenv install и без вызова pipenv shell) я могу запустить pipenv install столько раз как я хочу и каждый раз говорит, что устанавливает 74 зависимости. Означает ли это, что pipenv install не вступает в силу, или это просто означает, что он проходит через зависимости, чтобы убедиться, что они установлены?

Кажется, что может быть проблема, потому что, когда я открываю Pycharm для проекта для этой папки, он выдает мне следующее предупреждение («Требования к пакету ...» с возможностью установки требований от Pipfile.lock).

Я использую последнюю версию Pycharm, настроенную для использования среды pipenv, которую я создал с помощью pipenv install, и я могу подтвердить, что она использует эту среду, основанную на Pycharm-> Preferences-> Project-> Project Interpreter, где она показывает, что он использует правильную virtualenv для этой папки.

Но похоже, что и pipenv install, и Pycharm не считают, что зависимости установлены.

enter image description here

1 Ответ

1 голос
/ 01 мая 2019

Чтобы ответить на ваш второй вопрос, требования не устанавливаются снова.Каждый раз, когда вы запускаете pipenv install, он говорит, что устанавливает все требования из вашего файла Pipfile.lock, но если вы запустите pipenv install -v, чтобы сделать его подробным и увидеть результат, вы увидите такие вещи, как:

Installed version (4.1.2) is most up-to-date (past versions: 4.1.2)
Requirement already up-to-date: whitenoise==4.1.2 in c:\users\mihai\.virtualenvs\pipenvtest-1zyry8jn\lib\site-packages (from -r C:\Users\Mihai\AppData\Local\Temp\pipenv-1th31ie1-requirements\pipenv-r4e3zcr7-requirement.txt (line 1))
 (4.1.2)
  Since it is already installed, we are trusting this package without checking its hash. To ensure a completely repeatable environment, install into an empty virtualenv.
Cleaning up...
Removed build tracker 'C:\\Users\\Mihai\\AppData\\Local\\Temp\\pip-req-tracker-ip_gjf7h'

Итак, чтобы ответить на ваш вопрос, он просто просматривает их, чтобы проверить, установлены ли они, и устанавливает их только при необходимости.

...