sfood1
Detect import statements using the ast parser
Usage
sfood [options]
files ...
Overview
This script outputs a comma-separated list of tuples:
-
((from_root, from_filename), (to_root, to_filename))
The roots are the root directories where the modules lie. You can use sfood-graph or some other tool to filter, cluster and generate a meaningful graph from this list of dependencies.
As a special case, if the 'to' tuple is (None, None), this means to at least include the 'from' tuple as a node. This may happen if the file has no dependencies on anything.
As inputs, it can receive either files or directories; in case no argument is passed, it parses the current directory recursively.
Options
-
-h, --help -
show the help message and exit
-
-i, --internal, --internal-only -
Filter out dependencies that are outside of the roots of the input files. If internal is used twice, we filter down further the dependencies to the # set of files that were processed only, not just to the files that live in the same roots.
-
-I IGNORES, --ignore=IGNORES -
Add the given directory name to the list to be ignored.
-
-v, --verbose -
Output more debugging information
-
-f, -r, --follow, --recursive -
Follow the modules depended upon and trace their dependencies. WARNING: This can be slow. Use
--internalto limit the scope.
-
--print-roots -
Only print the package roots corresponding to the input files.This is mostly used for testing and troubleshooting.
-
-d, --disable-pragmas -
Disable processing of pragma directives as strings after imports.
-
-u, --ignore-unused -
Automatically ignore unused imports. (See sfood-checker(1))
Releases
Unchanged in 5 releases since Debian 6.0 (Squeeze).