Comment #7 on issue 2103 by asmeurer: fix sympy's internal dependencies
http://code.google.com/p/sympy/issues/detail?id=2103

I played with this a little more, and got a graph of only the top level directories. Here's the command I used to create the dot file (there's also some stuff to remove things that just clutter the graph):

sfood sympy/ | sfood-cluster `LS -1 sympy | xargs -L 1 echo "sympy/"| tr -d " "` | GREP -E "((.*?sympy.*?,.*sympy.*?), (.*?(sympy| None).*?,.*?(sympy|None).*?))" | GREP -v "'sympy'" | GREP -v "conftest" | GREP -v "abc.py" | sfood-graph > sympy-dependencies-graph.dot

Then supposedly

sympy-dependencies-graph.dot | dot -Tps | pstopdf -i | xargf acroread

will create a graph from it (I personally just used the Mac OS X GUI Graphviz program). I've attached both.

What can be learned from this. Well, the modules that have no arrows pointing to them, or only arrows from unimportant modules do not need to be imported automatically. This can be misleading, as this includes *everything*, including imports within functions and imports in tests. Hence, e.g., printing appears to require everything, but actually it only imports the various things if they are used in the first place. The command above could easily be extended to skip tests.

By the way, is there an actual issue here?

Attachments:
        sympy-dependencies-graph.dot  5.9 KB
        sympy-dependencies-graph.pdf  33.4 KB

--
You received this message because you are subscribed to the Google Groups 
"sympy-issues" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sympy-issues?hl=en.

Reply via email to