Lancer correctement python et ses commandes cousines
Dans cet article, on va voir comment lancer python
depuis la ligne de commande, ainsi que les commandes qui lui sont liées: pip, venv, etc.
Dans cet article, on va voir comment lancer python
depuis la ligne de commande, ainsi que les commandes qui lui sont liées: pip, venv, etc.
Le hasard de reddit m’a remis pipenv
sous le nez, et j’ai donc redonné sa chance au produit. Surprise, l’outil est maintenant très stable (plus de 2000 commits !) et mes propositions avaient même été intégrées.
Ça m’était déjà arrivé plusieurs fois après avoir ajouté mon env virtuel et ma branch git dans mon prompt : soudainement il se met à faire n’importe quoi. Des mixes de caratères, des sauts de ligne qui se font pas, la fusion de la ligne de commande sur elle-même.
Pour se faciliter la vie, vous utilisez virtualenvwrapper.
Et bien il y a plus meilleur : pew.
Quand on apprend un nouveau langage de programmation, on apprend d’abord les bases. Et pour la plupart des langages, elles sont communes : déclarer une variable, faire des conditions et des boucles, faire des fonctions, importer un code d’un autre fichier, etc.
Ce qui va différencier le moment où vous savez programmer dans CE langage, ce sont des notions spécifiques à lui que vous commencez à maitriser.
Vous avez mis à jour votre Python (par exemple avec homebrew ou en faisait une upgrade d’Ubuntu), et soudainement, BAM, tout exécution dans un virtualenv vous balance un gros ImportError: cannot import name MAXREPEAT
à la tronche.
Généralement montrer son .bashrc donne rapidement lieu dans les comments à un concours de celui qui a la plus longue (jusqu’à ce qu’arrive un utilisateur de zsh, et alors commence le concours de celui qui pisse le plus loin). Mais bon, aujourd’hui j’ai la flemme d’écrire un article complet.
Quand on commence beaucoup programmer, on accumule rapidement plusieurs projets en cours de développement sur sa machine. Certains vieux, certains récents, qui utilisent tous des bibliothèques similaires, mais pas forcément de mêmes versions. Ou parfois des bibliothèques incompatibles. Parfois même, des version différentes de Python: Python 2.6, 2.7, 3.2 ? Et c’est sans compter les mises à jour de l’OS, qui a ses propres besoins en terme de libs et de versions.
Le jour où ça casse, c’est le chaos.
Le lien vers l’ancien formulaire de contact était toujours accessible, et du coup on a reçu un mail depuis celui-ci, alors qu’on ne peut pas y répondre.
C’est bon, on l’a viré.
En attendant, voici la mail, et la réponse.
Si vous utilisez un virtualenv, vous n’avez pas envie d’installer des libs au niveau du système.
Et si vous n’êtes pas racistes, vous utilisez peut être quelques tools Ruby, comme compass.
Mais du coup, gem install compass
ne marche pas, il faut soit faire un sudo
, soit plonger dans les méandres de rvm
. Pas glop.