Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Find where dependencies are coming from in Python?

When I run pip install . I get all dependencies installed, including transitive dependencies, but the problem is that there are two modules that depend on two different versions of lxml. How can I figure out who is requiring what with pip or any other tool?

like image 754
guidoism Avatar asked Nov 13 '22 17:11

guidoism


1 Answers

Do you have an idea of which modules depend on lxml? If so, you could simply check those modules setup.py files and check install_requires, and most package creators will include the version number as well. e.g.

  install_requires=[
    'django-modeldict>=1.1.6',
    'nexus>=0.1.7',
    'django-jsonfield',
  ],

From: https://github.com/disqus/gargoyle/blob/master/setup.py

You may also want to look into something like modulefinder but I think simply checking the setup.py is much easier in this case.

like image 109
Bartek Avatar answered Dec 22 '22 18:12

Bartek