Skip to main content

A library to calculate python dependency graphs.

Project description

importlab

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.)

License

Apache 2.0

Installation

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

Usage

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

Command-line tool

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.

Roadmap

  • Makefile generation, to take advantage of make’s incremental update and parallel execution features

  • Integration with other static analysis tools

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

importlab-0.8.tar.gz (28.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

importlab-0.8-py2.py3-none-any.whl (21.6 kB view details)

Uploaded Python 2Python 3

File details

Details for the file importlab-0.8.tar.gz.

File metadata

  • Download URL: importlab-0.8.tar.gz
  • Upload date:
  • Size: 28.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for importlab-0.8.tar.gz
Algorithm Hash digest
SHA256 b24b3aac3b073966ae42fb2d3a7764f3377b30bb72c0d411fe29134cc9276e86
MD5 c68e5af5a1a728d43f885253bac883b7
BLAKE2b-256 742e2b779bb26addcecbecf0e632324f79ec9b682b3338e9ee6951482fc6eae0

See more details on using hashes here.

File details

Details for the file importlab-0.8-py2.py3-none-any.whl.

File metadata

  • Download URL: importlab-0.8-py2.py3-none-any.whl
  • Upload date:
  • Size: 21.6 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for importlab-0.8-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 a009ccde7b549b16f3e6b034fea748febc8d45ded9e8a09370a8f994acfda25b
MD5 e5fd6f8b6dc10ab11d2e69e57390d9ca
BLAKE2b-256 87d84afc72cb316bfd922cf5beab6bb9320a9655569bb92ebdaff18233991181

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page