1 \section{\module{modulefinder
} ---
2 Find modules used by a script
}
3 \sectionauthor{A.M. Kuchling
}{amk@amk.ca
}
5 \declaremodule{standard
}{modulefinder
}
6 \modulesynopsis{Find modules used by a script.
}
8 This module provides a
\class{ModuleFinder
} class that can be used to
9 determine the set of modules imported by a script.
10 \code{modulefinder.py
} can also be run as a script, giving the
11 filename of a Python script as its argument, after which a
report of
12 the imported modules will be printed.
14 \begin{funcdesc
}{AddPackagePath
}{pkg_name, path
}
15 Record that the package named
\var{pkg_name
} can be found in the specified
\var{path
}.
18 \begin{funcdesc
}{ReplacePackage
}{oldname, newname
}
19 Allows specifying that the module named
\var{oldname
} is in fact
20 the package named
\var{newname
}. The most common usage would be
21 to handle how the
\module{_xmlplus
} package replaces the
\module{xml
}
25 \begin{classdesc
}{ModuleFinder
}{\optional{path=None, debug=
0, excludes=
[], replace_paths=
[]}}
27 This class provides
\method{run_script()
} and
\method{report()
}
28 methods to determine the set of modules imported by a script.
29 \var{path
} can be a list of directories to search for modules; if not
30 specified,
\code{sys.path
} is used.
31 \var{debug
} sets the debugging level; higher values make the class print
32 debugging messages about what it's doing.
33 \var{excludes
} is a list of module names to exclude from the analysis.
34 \var{replace_paths
} is a list of
\code{(
\var{oldpath
},
\var{newpath
})
}
35 tuples that will be replaced in module paths.
38 \begin{methoddesc
}[ModuleFinder
]{report}{}
39 Print a
report to standard output that lists the modules imported by the script
41 paths, as well as modules that are missing or seem to be missing.
44 \begin{methoddesc
}[ModuleFinder
]{run_script
}{pathname
}
45 Analyze the contents of the
\var{pathname
} file, which must contain