pip3 install pandas
Traceback (most recent call last):
File "/usr/bin/pip3", line 9, in <module>
from pip import main
ImportError: cannot import name 'main'
J'ai quand même du mal avec l'environnement python que je trouve super... bordelique.
Ce message a été modifié 1 fois.
Dernière modification : 27 novembre 2018
à 10:59 par
yaug.
yaugJ'avais testé pew vite fait sans être fan.Peux-tu développer ? Je peux peut-être t'orienter vers d'autres solutions du coup ?
yaugMais oui clairement, les environnements multiples, ça fou la merdouilleEn effet Mais c'est la même chose pour la plupart des langages, sauf que c'est un peu moins visible car la plupart des langages proposent une compatibilité ascendante, ce qui n'est pas le cas entre Python 2 et Python 3.
yaugJe suis en train d'installer python et mon environnement sur mon serveur de prod, et après avoir mis à jour pip, bim, je me mange ça. Je vais trouver une solution en googlant le problème.. mais vraiment, j'ai une mauvaise impression sur l'environnement python et sa stabilité.C'est une bonne pratique d'installer pip sur un serveur de prod ? ça devrait pas juste servir au dependency management en dev jusqu'à une release qu'on peut packager en embarquant les dépendances ?
yaugJ'utilise cela comme j'utilise composer pour php, c'est sans doute un tort oui.Ben justement, je demande car par le passé j'ai dézingué pas mal de gens qui voulaient absolument installer composer en prod
Ce message a été modifié 1 fois.
Dernière modification : 27 novembre 2018
à 15:42 par
Fabe.
python -m pip
ou quelque chose du genre. Il fait grosso-modo le même job que Composer (sans entrer dans les détails, y a quelques subtilités de plus dans pip). Pour l'essentiel, de toute façon, l'installation des paquets Python n'est pas géré par pip mais par des outils (aussi livrés en standard) tels que setuptools ou easy_install. Pip est, grosso-modo, juste un wrapper (très complet) au dessus de ces outils, ainsi qu'un outil de résolution de dépendances (et il le fait mal dès que ça touche aux dépendances transitives, et ça n'est pas prêt de changer, vu la lenteur avec laquelle le problème est attaqué). GuybrushLa grosse différence vient aussi du fait que Python peut installer les paquets "globalement" (même au sein d'un environnement virtuel), là où, si je ne m'abuse, Composer "vendorize" les dépendances (un peu à la "node_modules" pour le coup).Il peut faire les deux. Mais l'installation globale est plutôt utilisée pour installer des dépendances de dév (phpunit, phpcs, etc...).
vendor/
dans le package et traiter celui-ci comme un binaire, c'est à dire le déployer à l'identique sur les environnements de QA jusqu'à la prod.composer install
en prod et c'est presque un antipattern (ah tiens faut que j'installe git sur mon serveur de prod, ah tiens faut que je mette un token github, ah tiens il y a une dépendance qui s'installait bien en QA mais plus dispo au moment où j'installe ma prod, bon je vais passer un composer update
en prod ni vu ni connu...)
Ce message a été modifié 1 fois.
Dernière modification : 27 novembre 2018
à 16:13 par
Fabe.
1996-2024 — Lexpage v4 — GPLv3 (sources)
page générée le 24 novembre 2024 à 11:05:21