Skip to main content

parsing the Python deps and generating graph data

Project description

The py-dep provides parsing the dependencies of Python packages and generating the metadata for graph.

The graph data is for NetworkX, Graphviz, blockdiag, Linkdraw, etc.

Status Documentation Status


  • Python 2.7 over or Python 3.3 over or PyPy 2.4.0 over
  • pip 1.5.6 or 6.1.1 over
  • wheel 0.24.0 over
  • NetworkX 1.9 over
  • pylibmc 1.4.3 over (optional)


  • Generating Linkdraw data (JSON and decoded JSON).
  • Generating Networkx DiGraph object data.
  • Cache the parsed dependencies.
  • Searching packages from PyPI.

Known issue with the packages that depends on py-deps

The packages that depend on py-deps; after that called “X” package, there is a known issue that fails to install using the pip. This problem is caused by py-deps is a package that depends on the pip and wheel. When you install the “X” in the pip following exception occurs.:

The AssertionError: Multiple .dist-info directories occures, because py-deps depends on pip, wheel.


The workaround for this problem is to use setuptools instead of pip.

  • You should use the easy_install or pip install --no-use-wheel command when you are installing the X from PyPI.

  • Use the python install when you install from the source tree , such as repository.

  • When you use the Tox in unit test , you should specify install_command in [testenv] section of tox.ini.:

    install_command = easy_install {opts} {packages}

See also pgraph is already corresponding to the above-mentioned problems.


0.5.5 (2015-08-19)

  • Adds TimeoutError, ConnectionRefusedError / socket.error exceptions.
  • Adds error handling the PyPI service down.
  • Changes Sphinx theme to sphinx_rtd_theme.
  • Adds counter of the each depth.

0.5.4 (2015-07-22)

  • Adds latest_version function.
  • Adds link_prefix for overriding node link.

0.5.3 (2015-07-19)

  • Adds exception InvalidMetadata type.

0.5.2 (2015-07-15)

  • Fixes duplicated line of linkdraw.
  • Changes linkdraw colors by dependencies depth.
  • Adds depth property to graph nodes.
  • Adds parsing the package dependency depth.

0.5.1 (2015-07-12)

  • Changes method to a function.
  • Fixes infinity loop trace_chain.
  • Fixes None redundant second argument of dict.get().
  • Fixes len() used to check if collection has items.
  • Fixes old-style string formatting.

0.5.0 (2015-06-22)

  • Supports memcached as the backend of cache.

0.4.6 (2015-06-11)

  • Fixes not control the version of package correctly.

0.4.5 (2015-06-07)

  • Adds disable time, descr for Linkdraw.

0.4.4 (2015-06-03)

  • Removes debug print.

0.4.3 (2015-06-02)

  • Adds JSON decoder for Linkdraw.

0.4.2 (2015-05-31)

  • Fixes #7 not handling the failure of python setup egg_info.
  • Adds py_deps.exceptions module.
  • Adds py_deps.logger module.
  • Fixes issues of DistributionNotFound, InstallationErrror.

0.4.1 (2015-05-28)

  • Adds Container.list_data method.
  • Unsupports wheel format for distribution.

0.4.0 (2015-05-20)

  • Searching packages from PyPI.

0.3.0 (2015-05-12)

  • Supports NetworkX DiGraph objects.
  • Changes to use mock instead of pip.req.RequirementSet.prepare_files.
  • Coverage 98% over.

0.2.0 (2015-05-10)

  • Cache the parsed dependencies.
  • Fixes setting the url of node and targets.

0.1.1 (2015-05-08)

  • Fixes test data of pretty_print, linkdraw.

0.1.0 (2015-05-07)

  • Supports generating linkdraw data.
  • Supports pip 6.1.1 over.
  • Supports wheel format for distribution.
  • Adds unit tests.

0.0.1 (2015-04-29)

  • First release

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 py-deps, version 0.5.5
Filename, size File type Python version Upload date Hashes
Filename, size py-deps-0.5.5.tar.gz (42.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