Skip to main content

Command line interface for analyzing Python imports.

Project description

https://img.shields.io/pypi/v/impulse.svg Python versions https://api.travis-ci.org/seddonym/impulse.svg?branch=master
  • Free software: BSD license

Impulse is a command line tool for exploring the imports in a Python package.

It can be used to produce dependency graphs such as this:

Graph of flask package.

Warning: This software is currently in beta. It is undergoing active development, and breaking changes may be introduced between versions.

Installation

Install Graphviz

First, you will need to install Graphviz. For more information, see the Graphviz download page or search for “how to install Graphviz” on your operating system.

Install Impulse

pip install impulse

Install the Python package you wish to analyse

pip install somepackage

Command overview

There is currently only one command, feel free to suggest more by opening an issue or pull request.

drawgraph

Draw a graph of the dependencies within any installed Python package or subpackage.

The graph shows the relationship between all the immediate children of the package. An arrow indicates that there is at least one import by the child (or any of its descendants) from the subpackage where the arrow points.

For example, in a graph of the package django.db, there is an arrow from django.db.backends pointing to django.db.models. This is because django.db.backends.base.schema imports django.db.models.Index. All descendants are treated as belonging to the child they are in, so an import between any of those descendants will cause an import to be shown.

Command:

impulse drawgraph django.db

Output:

Graph of django.db package.

Project details


Download files

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

Files for impulse, version 1.0b3
Filename, size File type Python version Upload date Hashes
Filename, size impulse-1.0b3.tar.gz (3.7 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page