parsing the Python deps and generating graph data
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
docs
py_deps
utils
.coveragerc
.gitignore
.pycheckrc
.pylintrc
.travis.yml
LICENSE
MANIFEST.in
README.rst
pytest.ini
setup.cfg
setup.py
tox.ini

README.rst

About py-dep

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

https://secure.travis-ci.org/mkouhei/py-deps.png?branch=master https://coveralls.io/repos/mkouhei/py-deps/badge.png?branch=master Documentation Status

Requirements

  • Python 2.7 over or Python 3.5 over or PyPy 5.10.0 over
  • setuptools 38.4.0 over
  • pip 9.0.1 over
  • wheel 0.30.0 over
  • NetworkX 2.0 over
  • pylibmc 1.4.3 over (optional)

Features

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

Workaround

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 setup.py 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.:

    [testenv]
    install_command = easy_install {opts} {packages}
    

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