clique
clique copied to clipboard
Refactor with richer data
This will help support #6.
- [ ] Should be passing maps of data about functions/macros around instead of just qualified names. This gives us more flexibility.
- [ ] Also in general, the processing passes here are not very clean. Would be better to clearly separate a full dependencies parse from all of the downstream filtering, writing, etc.
preserving such information would allow for graphs to be coloured & styled to show more information, good idea.
btw I made a graph of your project's internal dependencies only, see the wiki - it's a planar graph!
(scsv/spit-csv "sdeps.csv" (mapcat (fn [[k v]] (map (partial vector k "") (distinct (c/except (filter namespace (remove (partial = k) v)) (c/default-exclude))))) (c/all-deps "src")))
Awesome; that's great to see :-)
I've got a refactor going which simplifies this a little bit:
(-> (dependencies 'clojure.tools.cli)
(deps-ns-filter ['clojure.tools.cli\/])
((fn [ds] (export-graphviz (nodes ds) (edges ds) "tools.cli"))))
I'll throw a pull request your way soon.