Importlab is a library for Python that automatically infers dependencies and calculates a dependency graph. It can perform dependency ordering of a set of files, including cycle detection.
Importlab's main use case is to work with static analysis tools that process one file at a time, ensuring that a file's dependencies are analysed before it is.
(This is not an official Google product.)
Apache 2.0
Importlab can be installed from pip
pip install importlab
To check out and install the latest source code
git clone https://github.com/google/importlab.git cd importlab python setup.py install
Importlab is primarily intended to be used as a library. It takes one or more python files as arguments, and generates an import graph, typically used to process files in dependency order.
It is currently integrated into pytype
Importlab ships with a small command-line tool, also called
importlab
, which can display some information about a project's
import graph.
usage: importlab [-h] [--tree] [--unresolved] [filename [filename ...]] positional arguments: filename input file(s) optional arguments: -h, --help show this help message and exit --tree Display import tree. --unresolved Display unresolved dependencies.
Makefile
generation, to take advantage ofmake
's incremental update and parallel execution features- Integration with other static analysis tools