sfood(1) detect import statements using the AST parser


sfood [options] files ...


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.


-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.
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 --internal to limit the scope.
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))


sfood was written by Martin Blais <[email protected]> and it's part of snakefood suite.

This manual page was written by Sandro Tosi <[email protected]>, for the Debian project (and may be used by others).