Используя Pip, как я могу принудительно обновить только не обновленные пакеты? - PullRequest
3 голосов
/ 28 сентября 2010

При запуске Pip с файлом requirements.txt, который имеет фиксированные версии, мы получаем следующую ошибку (или аналогичную):

VersionConflict: (solrpy 0.9.1 
(.../lib/python2.6/site-packages/solrpy-0.9.1-py2.6.egg),
    Requirement.parse('solrpy==0.9.3'))

, поскольку версия конфликтует.Использование pip install -U -r requirements.txt исправляет это, но также заставляет нас снова загружать все пакеты.Одна из приятных особенностей Pip заключается в том, что он будет знать, что установлено, и не будет повторно скачивать / устанавливать его.

Есть ли способ обойти это?Я предполагаю, что мне нужно «мягкое обновление», при котором пакеты обновляются только в случае их конфликта.

Ответы [ 2 ]

1 голос
/ 28 сентября 2010

Кажется, есть выдающаяся ошибка для этого: http://bitbucket.org/ianb/pip/issue/13/

0 голосов
/ 28 сентября 2010

Обновите пакет solrpy отдельно:

pip install -U --no-deps solrpy

Я думаю, что вы, возможно, можете пропустить параметр --no-deps, но вы можете попробовать это сначала, а затем второе, если у вас есть проблемы:

pip install -U solrpy

Я не верю, что есть способ просто обновить пакет с более высокой версией, уже установленный из файла requirements.txt.

...