Path 1: 7 calls (0.88)

'foo.dot' (1) 'foo.gv' (1) 'tests/regrtest_data/foo.dot' (1) 'graph.png' (1) 'graph' (1) 'import.dot' (1) 'int_import.dot' (1)

dict (6) defaultdict (1)

None (2) 'foo.dot' (1) 'foo.gv' (1) 'tests/regrtest_data/foo.dot' (1) 'import.dot' (1) 'int_import.dot' (1)

RuntimeError (2)

1def _dependencies_graph(filename: str, dep_info: dict[str, set[str]]) -> str:
2    """Write dependencies as a dot (graphviz) file."""
3    done = {}
4    printer = DotBackend(os.path.splitext(os.path.basename(filename))[0], rankdir="LR")
5    printer.emit('URL="." node[shape="box"]')
6    for modname, dependencies in sorted(dep_info.items()):
7        sorted_dependencies = sorted(dependencies)
8        done[modname] = 1
9        printer.emit_node(modname)
10        for depmodname in sorted_dependencies:
11            if depmodname not in done:
12                done[depmodname] = 1
13                printer.emit_node(depmodname)
14    for depmodname, dependencies in sorted(dep_info.items()):
15        for modname in sorted(dependencies):
16            printer.emit_edge(modname, depmodname)
17    return printer.generate(filename)
            

Path 2: 1 calls (0.12)

'ext_import.dot' (1)

defaultdict (1)

'ext_import.dot' (1)

1def _dependencies_graph(filename: str, dep_info: dict[str, set[str]]) -> str:
2    """Write dependencies as a dot (graphviz) file."""
3    done = {}
4    printer = DotBackend(os.path.splitext(os.path.basename(filename))[0], rankdir="LR")
5    printer.emit('URL="." node[shape="box"]')
6    for modname, dependencies in sorted(dep_info.items()):
7        sorted_dependencies = sorted(dependencies)
8        done[modname] = 1
9        printer.emit_node(modname)
10        for depmodname in sorted_dependencies:
11            if depmodname not in done:
12                done[depmodname] = 1
13                printer.emit_node(depmodname)
14    for depmodname, dependencies in sorted(dep_info.items()):
15        for modname in sorted(dependencies):
16            printer.emit_edge(modname, depmodname)
17    return printer.generate(filename)