Почему Pip ищет кеш загрузки, если тот же самый пакет уже установлен, когда выполняется --upgrade - PullRequest
0 голосов
/ 09 мая 2011

Это на окнах.В пакетах Global Site я установил двоичный файл lxml (файл .egg).И теперь я создаю virtualenv и пытаюсь получить то же яйцо из глобальной среды.

virtualenv.exe mynewvenv
call mynewvenv\Scripts\activate.bat

Итак, «замораживание пипса» дает мне яйцо, которое я установил в своей глобальной среде.

Теперь у меня есть архивная версия (источник) того же самого пакета lxml (с тем же именем и той же версией) в кэше загрузки.Теперь, если я запускаю «pip install --upgrade», он фактически выбирает tarball (источник) из кеша загрузки и устанавливает его, не проверяя, установлен ли тот же пакет (хотя и как яйцо).Почему Пип ведет себя так?В идеале Пип должен вывести что-то вроде «Требование уже подтверждено» и двигаться дальше.Не так ли?

Обновление: только что обнаружил, что даже "easy_install" ведет себя так же странно.

1 Ответ

1 голос
/ 10 мая 2011

Когда вы используете pip install --upgrade, он всегда (пере) устанавливает пакет и его зависимости.

IIRC - это единственный способ принудительной переустановки.

...