Pipenv
Introduction à Pipenv
Cette quête est le point de départ vers le monde merveilleux des environnements virtuels et de la gestion des dépendances avec Python !
Objectifs:
- Découvrir et comprendre Pipenv
- Installer Pipenv
- Créer un environnement virtuel
- Installer des dépendances
- Supprimer un environnement virtuel et ses dépendances
- Interagir dans l'environnement virtuel
- Installer les dépendances d'un projet existant
- Aller plus loin
Découvrir et comprendre Pipenv
Pipenv c'est quoi ? C'est un gestionnaire d'environnements virtuels et de dépendances. C'est une alternative à la combinaison de pip et virtualenv. Pour rappel pip est un gestionnaire de paquets et virtualenv un gestionnaire d'environnements virtuels
Pipenv a tellement de succès qu'il est recommandé officiellement par la documentation python
Un exemple d'utilisation
Vous récupérez 2 projets écrits en python
Le premier projet est sous python 3.6 et utilise la dépendance DJANGO en version 2
Le deuxième projet est sous python 3.7 et utilise la dépendance DJANGO en version 3.1
Malheureusement tu vas avoir un conflit entre les dépendances DJANGO et les versions de python si tu n'utilises pas d'environnement virtuel c'est là que pipenv intervient.
Pipenv permet de créer un environnement virtuel pour chacun des projets, fini les conflits entre les versions de python et les dépendances.
Cerise sur le gâteau il crée de manière automatisée les environnements virtuels et télécharge les dépendances automatiquement.
Voyons ça par la suite...
Installation de Pipenv
Pour installer pipenv rien de plus simple, va sur la documentation officielle qui va te proposer l'option adaptée à ton système d'exploitation.
Création d'un environnement virtuel
Maintenant voyons comment créer un environnement virtuel
pipenv install
Félicitation tu viens de créer un environnement virtuel
Créer un environnement virtuel avec une version spécifique de python
pipenv --python 3.6
Installation des dépendances
Alors maintenant que tu sais créer des environnements virtuels tu aimerais pouvoir installer des dépendances dans ces environnements.
pipenv install NomDeTaDépandance
Exemple:
pipenv install django
Lance installation de la dépendance Django
Supprimer un environnement virtuel et ses dépendances
Comment supprimer un environnement virtuel ? Rien de plus simple, places toi dans le dossier de ton projet puis saisis le code suivant :
pipenv --rm
Félicitation tu viens de supprimer l’environnement virtuel que tu avais créé et les dépendances qui étaient installées.
Interagir dans l'environnement virtuel
Lancer une commande dans l'environnement virtuel
pipenv run
Exemple:
pipenv run python
Va lancer le Python de votre environnement virtuel.
Entrée dans le shell de l'environnement virtuel
pipenv shell
Sortir de l'environnement virtuel
exit
Installer les dépendances d'un projet existant
Hey tu pensais que c'était fini ! et bien non j'ai gardé le meilleur pour la fin
Ton collègue développeur part en vacances. Il te demande de reprendre son projet qu'il t'as partagé sur github. Comme bien entendu vous êtes une équipe de développeurs qui respectent les recommandations de la documentation officielle de python, vous utilisez pipenv.
Il te suffit alors de cloner son dépô qui, comme tu la peux être déjà remarqué en faisant des tests précédemment, contient des fichiers pipfile créés par pipenv
Alors comment fais-tu pour les utiliser ? ...à vrai dire c'est plutôt simple. Ouvres un shell dans le dossier que tu viens de cloner et lances la commande ci-dessous:
pipenv install
Voilà c'est tout. pipenv va détecter les fichiers pipfile, créer un environnement virtuel, et installer la bonne version de python ainsi que les dépendances....
Pipenv c'est quand même magique !
Aller plus loin
Hey tu pensais que c'était fini ! et bien non j'ai gardé le meilleur pour la fin.
Documentation officiel de pipenv !