« Distribuer un projet en python » : différence entre les versions

Contenu supprimé Contenu ajouté
comme outil officiel. Ces extensions ont la particularité d'importer la fonction setup de distutils et de l'appeler avec les mêmes arguments
Ligne 9 :
== Environnement virtuel ==
 
Non seulement d'inclure les site-packages, site.py essaie de détecter si l'instance de python courante s'exécute dans un « '''environnement virtuel''' » (dit aussi venv, pour ''virtual environment''). Il détermine cela si il existe un fichier <code>pyenv.cfg</code> dans le répertoire immédiatement au dessus de l'exécutable python en cours. Si c'est le cas, le fichier site-packages de l'environnement virtuel est placé tout en haut de la liste <code>sys.path</code> afin que les imports soient en priorité cherchés dans cet environnement, etpuis utiliserdans le site-packages de l'utilisateur en recours, puiset le site-packages de l'installation python en deuxième recours,.

Toutefois à moins quesi le fichier <code>pyenv.cfg</code> contiennecontient la ligne <code>include-system-site-packages = false</code>, auquelles cassite packages de l'utilisateur et de l'environnement sont supprimés du <code>sys.path</code>. toutUn import de module ne peut alors réussir que si il existe bien dans l'environnement virtuel ou bien si il s'agit d'un ''core-lib'' de python (<code>random</code>, <code>urllib</code>, ...). Cette ligneconfiguration est indispensable si on veut s'assurer que son l'environnement de travail nécessaire au fonctionnement de son module soit reproductible au mieux par les tierces personnes avec qui vous partagerez les ''plans'' de votre environnement virtuel.
 
La manière dont vous décrivez ces environnement est propre à chaque outil, nous décrirons plus loin celui de pip.