pydep generates simple dependency listings and graphs for Python modules.
Usage:
pydep dir [options] [extramodules]
-q = Quiet mode
-n = Don't generate the graph
-u = Disable grouping
-g = Group character(by default _ is used to split module names)
-d = Density of the graph(10=very dense, 0=very loose, default=9)
Examples:
pydep ~/projects/foo os time sys
pydep ~/projects/bar -g -
Atarashii
Python2.6 (Warning 14000x8000 Pixels!)
Tweepy
Nodes can have 6 types of information
- [number] shows the number of modules the node depends on.
- (number) shows how many modules depend on this node.
- ! indicates that this node imports itself.
- ? indicates that some imports seem unused.
- * indicates star imports.
- ~ indicates partial imports.
Edges can have 4 types of arrows
- Arrow, indicates a direct import via "import foo"
- Dot, indicates a partial import via "from foo import bar"
- Empty box, it seems that this import isn't used.
- Filled box, indicates a star import via "from foo import *"
Note: Due to the dynamic nature of Python some of the edge information might be incorrect.
The source is available on GitHub, to contribute to the project, fork it on GitHub and send a pull request. Everyone is welcome to make improvements to pydep!
Copyright (c) 2010 Ivo Wetzel
pydep is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
pydep is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with pydep. If not, see <http://www.gnu.org/licenses/>.