Installation de versions de paquets spécifiques avec pip
j'essaie d'installer la version 1.2.2 de L'adaptateur MySQL_python, en utilisant un nouveau virtualenv créé avec l'option --no-site-packages
. La version actuelle indiquée dans PyPi est 1.2.3 . Est-il possible d'installer l'ancienne version? J'ai trouvé un article disant que cela devrait le faire:
pip install MySQL_python==1.2.2
une fois installé, cependant, il affiche toujours MySQL_python-1.2.3-py2.6.egg-info dans le site de paquets. Est-ce un problème spécifique à ce package, ou suis J'ai fait quelque chose de mal?
6 réponses
D'abord, je vois deux problèmes avec ce que vous essayez de faire. Puisque vous avez déjà une version installée, vous devez désinstaller le pilote existant ou utiliser pip install -I MySQL_python==1.2.2
cependant, vous découvrirez bientôt que cela ne fonctionne pas. Si vous regardez le journal d'installation de pip, ou si vous faites un pip install -Iv MySQL_python==1.2.2
, vous constaterez que le lien D'URL PyPI ne fonctionne pas pour MySQL_python v1.2.2. Vous pouvez le vérifier ici: http://pypi.python.org/pypi/MySQL-python/1.2.2
le lien de téléchargement 404s et les liens d'URL de repli sont redirigés à l'infini en raison de sourceforge.net la mise à jour récente et L'URL périmée de PyPI.
Afin d'installer correctement le pilote, vous pouvez suivre ces étapes:
pip uninstall MySQL_python
pip install -Iv http://sourceforge.net/projects/mysql-python/files/mysql-python/1.2.2/MySQL-python-1.2.2.tar.gz/download
vous pouvez même utiliser une gamme de versions avec la commande pip install
. Quelque chose comme ceci:
pip install 'stevedore>=1.3.0,<1.4.0'
Une façon comme suggéré dans la section ce post est de mentionner la version de pip
comme
pip install -Iv MySQL_python==1.2.2
c'est-à-dire utiliser ==
et mentionner le numéro de version pour installer uniquement cette version. -I, --ignore-installed
ignore les paquets déjà installés.
je crois que si vous avez déjà un paquet qu'il a installé, pip ne l'écrasera pas avec une autre version. Utilisez -I
pour ignorer les versions précédentes.
pour installer une version package python spécifique que ce soit la première fois, une mise à niveau ou une utilisation de niveau inférieur:
pip install --force-reinstall MySQL_python==1.2.4
MySQL_python la version 1.2.2 n'étant pas disponible, j'ai utilisé une version différente. Pour visualiser toutes les versions de paquets disponibles à partir d'un index, exclure la version:
pip install MySQL_python==
Puisqu'il s'agissait d'un changement de rupture introduit dans la version 10 de pip, j'ai déclassé à une version compatible:
pip install 'pip<10'
cette commande indique à pip d'installer une version du module inférieure à la version 10. Faites ceci dans un virutalenv pour que vous ne gâchiez pas votre installation de site de Python.