GtkEggDeps uses the wonderful tl.eggdeps and PyGtk to provide an interactive dependency browser:
If you have easy_install, you should be able to easy_install gtkeggdeps.
Alternatively, download gtkeggdeps.py and use it directly. You'll need to have tl.eggdeps installed.
The source code can be found in this Bazaar repository: https://mg.pov.lt/gtkeggdeps/bzr.
The source code can be checked out from Launchpad: bzr get lp:gtkeggdeps
You can pass a list of egg names on the command line to limit the view just to those eggs and their dependencies.
The standard Gtk+ keys for navigating trees are
+ | expand a tree node |
- or / | collapse a tree node |
* | expand a tree node recursively |
Backspace | jump to parent |
Ctrl+S | start incremental search among expanded nodes |
Ctrl+Up | find previous matching node |
Ctrl+Down | find next matching node |
Extra keys defined by gtkeggdeps
Enter | expand/collapse a node |
The colours are:
red | This is dependency loop |
blue | There exists a dependency to this package that is less indirect (e.g. if z3c.formdemo directly depends on zope.schema, then whenever zope.schema appears as an indirect dependency it will be in blue). Blue nodes aren't expanded recursively when you press *, but they can be expanded with +. |
grey | This package is not available in your working set |
Add a new part to buildout.cfg that uses zc.recipe.egg and installs gtkeggdeps together with the eggs whose dependencies you want to explore. Example for z3c.formdemo:
[buildout] develop = . parts = demo test coverage eggdeps [eggdeps] recipe = zc.recipe.egg eggs = gtkeggdeps z3c.formdemo [app, test] ...
Rerun buildout and you'll get a bin/gtkeggdeps script that will see all the eggs you specified.