I was playing with pkg_resources today, and came up with the following little script. It's nothing special, but I thought it might be of interest. It uses pkg_resources and networkx to create a graph of dependencies between the packages installed in your Python environment. The output is a GraphML file, that can be loaded into a graph display tool (I used a tool called yEd). You could probably also output in other formats, like GraphViz. I don't know how interesting this will be to others, but I thought I'd share it - enjoy! Paul import networkx as nx from pkg_resources import Environment e = Environment() g = nx.DiGraph() for name in sorted(e): dists = e[name] for dist in dists: reqs = dist.requires() for r in reqs: g.add_edge(dist.project_name, r.name) for n in g.nodes(): g.node[n]['Label'] = n nx.write_graphml(g, 'deps.graphml')
participants (1)
-
Paul Moore