Lors de l'exécution de pépin avec un fichier requirements.txt
qui a des versions fixes, nous obtenons l'erreur suivante (ou similaire):En utilisant Pip, comment forcer la mise à niveau uniquement des paquets non mis à jour?
VersionConflict: (solrpy 0.9.1
(.../lib/python2.6/site-packages/solrpy-0.9.1-py2.6.egg),
Requirement.parse('solrpy==0.9.3'))
parce que les conflits de version. L'utilisation de pip install -U -r requirements.txt
corrige cela, mais cela nous oblige également à télécharger tous les paquets à nouveau. L'une des bonnes choses à propos de Pip est qu'il va savoir ce qui est installé et ne pas re-télécharger/installer.
Y a-t-il un moyen de contourner ce problème? Je suppose que ce que je veux, c'est une "mise à jour logicielle", où elle ne fait que mettre à jour les paquets s'ils sont en conflit.
Oui, -U actuellement re-télécharge tous les paquets installés. C'est un bug et devrait être réparé. Dans une note non liée, si vous voyez cette erreur VersionConflict, cela indique que vous exécutez une version de pip datant d'au moins six mois. C'est ancien en termes de pip; Je recommande fortement de ne pas utiliser les paquets OS pour pip, mais d'obtenir la version la plus récente directement de PyPI. –
Merci Carl, c'est utile. Cela vaut-il la peine d'ajouter un +1 au rapport de bug mentionné ci-dessous? –