clique icon indicating copy to clipboard operation
clique copied to clipboard

Refactor with richer data

Open metasoarous opened this issue 9 years ago • 2 comments

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.

metasoarous avatar Mar 19 '15 17:03 metasoarous

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")))

Hendekagon avatar Mar 19 '15 18:03 Hendekagon

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.

metasoarous avatar Mar 19 '15 18:03 metasoarous