python / python-docs-fr

Mirroir de https://git.afpy.org/AFPy/python-docs-fr
https://docs.python.org/fr/
Other
353 stars 268 forks source link

Makefile should use python from venv as default #1859

Closed christopheNan closed 2 years ago

christopheNan commented 2 years ago

Peut aider à ne pas se retrouver avec #1857

christopheNan commented 2 years ago

Should help for #1863.

PyDocTeur commented 2 years ago

C'est bien parti ! Ça manque d'un label automerge ?


Disclaimer Je suis un robot fait par l'équipe de [l'AFPy et de Traduction](https://github.com/AFPy/PyDocTeur/graphs/contributors) sur leur temps libre. Je risque de dire des bétises. Ne me blâmez pas, blamez les développeurs. [Code source](https://github.com/afpy/pydocteur) I'm a bot made by the [Translation and AFPy teams](https://github.com/AFPy/PyDocTeur/graphs/contributors) on their free time. I might say or do dumb things sometimes. Don't blame me, blame the developer ! [Source code](https://github.com/afpy/pydocteur) (state: approved) `PyDocTeur v1.12.0`
JulienPalard commented 2 years ago

update_venv dépend de ensure_prerequisites, ça ne peut pas fonctionner :

$ make update_venv
Déjà sur '3.10'
Votre branche est à jour avec 'origin/3.10'.
You're missing dependencies please install using:

make update_venv
make: *** [Makefile:115 : ensure_prerequisites] Erreur 1
JulienPalard commented 2 years ago

Pour moi cette PR ajoute trop de complexité, et je doute qu'elle résolve le problème initial. Enfin elle simplifie sa résolution, l'utilisateur devra taper make update-venv plutôt qu'aller glisser pip install --upgrade dans le bon environnement ?

Mais je ne pense pas (ou je ne pense plus) que le rôle du Makefile soit de s'occuper de tout et de tout contrôler pour tout faire fonctionner dans tous les cas.

D'ailleurs le Makefile actuel n'impose pas grand chose à part d'avoir les dépendances d'installées. Il n'impose pas d'utiliser un venv (ni côté trad ni côté cpython), ce que cette PR changerait.

Après tout, pour moi, si un nouveau veut juste faire un pip install sans venv (qui va donc installer dans son ~/.local, rien de méchant), ça me va. S'il veut utiliser pipx ou n'importe quoi d'autre, même son gestionnaire de paquets, tant qu'il arrive à tirer les dépendances, moi ça me va.

Pour vraiment résoudre le problème des personnes qui ont des dépendances pas à jour il faudrait faire tourner un pip install à chaque invocation de make, ce qui nécessite du réseau, est lent, est n'est probablement juste pas le travail de make.

christopheNan commented 2 years ago

Pour moi cette PR ajoute trop de complexité, et je doute qu'elle résolve le problème initial. Enfin elle simplifie sa résolution, l'utilisateur devra taper make update-venv plutôt qu'aller glisser pip install --upgrade dans le bon environnement ?

Ok

Mais je ne pense pas (ou je ne pense plus) que le rôle du Makefile soit de s'occuper de tout et de tout contrôler pour tout faire fonctionner dans tous les cas.

D'ailleurs le Makefile actuel n'impose pas grand chose à part d'avoir les dépendances d'installées. Il n'impose pas d'utiliser un venv (ni côté trad ni côté cpython), ce que cette PR changerait.

Celui-ci non plus. Make VENVDIR=/usr/ doit fonctionner (pas testé cependant).

Après tout, pour moi, si un nouveau veut juste faire un pip install sans venv (qui va donc installer dans son ~/.local, rien de méchant), ça me va. S'il veut utiliser pipx ou n'importe quoi d'autre, même son gestionnaire de paquets, tant qu'il arrive à tirer les dépendances, moi ça me va.

Ok