Configuration supplémentaire de Pip et Virtualenv¶
Obliger l’utilisation d’un environnement virtuel actif pour pip
¶
Maintenant, il devrait être clair que l’utilisation d’environnements virtuels est une excellente façon de garder votre environnement de développement propre et de garder les ‘requirements’ des différents projets distincts.
Lorsque vous commencez à travailler sur de nombreux projets différents, il peut être difficile de se rappeler d’activer l’environnement virtuel associé quand vous revenez à un projet spécifique. De ce fait, il est très facile d’installer des paquets globalement tout en pensant que vous installez vraiment le paquet pour l’environnement virtuel du projet. Au fil du temps, cela peut se traduire par une liste globale de paquets désordonnée.
Pour vous assurer que vous installez des paquets dans votre environnement virtuel actif lorsque vous utilisez pip install
, envisagez d’ajouter les deux lignes suivantes à votre fichier ~/.bashrc
:
export PIP_REQUIRE_VIRTUALENV=true
Après avoir enregistré ce changement et rechargé le fichier ~/.bashrc
avec source ~/.bashrc
, pip ne vous laissera plus installer des paquets si vous n’êtes pas dans un environnement virtuel. Si vous essayez d’utiliser pip install
en dehors d’un environnement virtuel, pip va gentiment vous rappeler qu’un environnement virtuel actif est nécessaire pour installer des paquets.
$ pip install requests
Could not find an activated virtualenv (required).
Vous pouvez également faire cette configuration en éditant votre fichier pip.conf
ou pip.ini
. pip.conf
est utilisé par les systèmes d’exploitation Unix et Mac OS X et il peut être trouvé dans:
$HOME/.pip/pip.conf
De même, le fichier pip.ini
est utilisé par les systèmes d’exploitations Windows et peut trouvé dans:
%HOME%\pip\pip.ini
Si vous n’avez pas de fichiers a pip.conf
ou pip.ini
dans ces emplacements, vous pouvez créer un nouveau fichier avec le nom correct pour votre système d’exploitation.
Si vous avez déjà un fichier de configuration, ajoutez juste la ligne suivante à sous la configuration [global]
pour obliger l’usage d’un environnement virtuel actif:
require-virtualenv = true
Si vous n’avez pas un fichier de configuration, vous devrez en créer un nouveau et ajouter les lignes suivantes à votre nouveau fichier:
[global]
require-virtualenv = true
Vous aurez bien sûr besoin d’installer certains paquets globalement (généralement ceux que vous utilisez dans différents projets systématiquement) et cela peut être accompli en ajoutant ce qui suit à votre fichier ~/.bashrc
:
gpip() {
PIP_REQUIRE_VIRTUALENV="" pip "$@"
}
Après avoir sauvé les changements et rechargé votre fichier ~/.bashrc
, vous pouvez maintenant installer des paquets globalement en exécutant gpip install
. Vous pouvez changer le nom de la fonction à votre guise, gardez juste à l’esprit que vous devrez utiliser ce nom lorsque vous essayerez d’installer des paquets globalement avec pip.
Mettre en cache les paquets pour les utilisations futures¶
Chaque développeur a ses bibliothèques préférées et quand vous travaillez sur un grand nombre de projets différents, vous êtes amenés à avoir un certain chevauchement entre les bibliothèques que vous utilisez. Par exemple, vous utilisez peut-être la bibliothèque requests
dans un grand nombre de projets différents.
Il est certainement inutile de retélécharger les mêmes paquets/bibliothèques chaque fois que vous commencez à travailler sur un nouveau projet (et dans un nouvel environnement virtuel par conséquent). Heureusement, vous pouvez configurer pip de manière à ce qu’il essaie de réutiliser les paquets déjà installés.
Sur les systèmes UNIX, vous pouvez ajouter la ligne suivante à votre fichier .bashrc
ou .bash_profile
.
export PIP_DOWNLOAD_CACHE=$HOME/.pip/cache
Vous pouvez définir les chemins n’importe où (à partir du moment où vous avez les droits en écriture). Après avoir ajouté cette ligne, faites un source
de votre fichier .bashrc
(ou .bash_profile
) et vous serez fin prêt.
Une autre manière de faire la même configuration est via les fichiers pip.conf
ou pip.ini
, selon votre système d’exploitation. Si vous êtes sous Windows, vous pouvez ajouter la ligne suivante à votre fichier pip.ini
sous la configuration [global]
:
download-cache = %HOME%\pip\cache
De même, sur les systèmes UNIX, vous devriez simplement ajouter la ligne suivante à votre fichier pip.conf
sous la configuration [global]
:
download-cache = $HOME/.pip/cache
Même si vous pouvez utiliser le chemin que vous voulez pour stocker votre cache, il est recommandé que vous créiez un nouveau dossier dans le dossier où votre fichier pip.conf
ou pip.ini
est situé. Si vous ne vous faites pas confiance complètement sur cette utilisation obscure des chemins, il suffit d’utiliser les valeurs fournies ici et tout ira bien.