you paquetes mac instalar however desinstalar available are actualizar python pip requirements.txt

python - mac - ¿Hay alguna manera de mostrar los árboles de dependencia para los paquetes de pip?



install pip linux (2)

Tengo un proyecto con múltiples dependencias de paquetes, los requisitos principales se enumeran en requirements.txt . Cuando llamo a pip freeze , imprime los paquetes actualmente instalados como una lista simple. Preferiría también obtener sus relaciones de dependencia, algo como esto:

Flask==0.9 Jinja2==2.7 Werkzeug==0.8.3 Jinja2==2.7 Werkzeug==0.8.3 Flask-Admin==1.0.6 Flask==0.9 Jinja2==2.7 Werkzeug==0.8.3

El objetivo es detectar las dependencias de cada paquete específico:

Werkzeug==0.8.3 Flask==0.9 Flask-Admin==1.0.6

E insértelos en mis requirements.txt actuales.txt. Por ejemplo, para esta entrada:

Flask==0.9 Flask-Admin==1.0.6 Werkzeug==0.8.3

Me gustaría conseguir:

Flask==0.9 Jinja2==2.7 Flask-Admin==1.0.6 Werkzeug==0.8.3

¿Hay alguna manera de mostrar las dependencias de los paquetes pip instalados?


Debes echarle un vistazo a pipdeptree :

$ pip install pipdeptree $ pipdeptree -fl Warning!!! Cyclic dependencies found: ------------------------------------------------------------------------ xlwt==0.7.5 ruamel.ext.rtf==0.1.1 xlrd==0.9.3 openpyxl==2.0.4 - jdcal==1.0 pymongo==2.7.1 reportlab==3.1.8 - Pillow==2.5.1 - pip - setuptools

No genera un archivo Requirements.txt como se indica directamente. Sin embargo, la fuente (255 líneas de código de Python) debería ser relativamente fácil de modificar según sus necesidades, o alternativamente, puede (como lo indica @MERose está en el archivo README de pipdeptree 0.3):

pipdeptree --freeze --nowarn | grep -P ''^[/w0-9/-=.]+'' > requirements.txt

La versión 0.5 de pipdeptree también permite la salida JSON con la opción --json , que es más fácil de usar en la máquina, a costa de ser menos legible.


yolk puede mostrar las dependencias de los paquetes, siempre que

  • fueron instalados vía setuptools
  • vino con metadatos que incluyen información de dependencia

    $ yolk -d Theano Theano 0.6.0rc3 scipy>=0.7.2 numpy>=1.5.0