Leaking memory?
lgrapenthin opened this issue · 2 comments
lgrapenthin commented
I wonder whether this is intended and if so I'd be interested in knowing why
(-> (dep/graph)
(dep/depend :a :b)
(dep/remove-edge :a :b))
;-> {:dependencies {:a #{}}, :dependents {:b #{}}}
(-> (dep/graph)
(dep/depend :a :b)
(dep/remove-all :a))
;-> {:dependencies {}, :dependents {:b #{}}}
The only way to clean the graph is to call remove-all on both nodes end egdes which seems counter intuitive
(-> (dep/graph)
(dep/depend :a :b)
(dep/remove-all :a)
(dep/remove-all :b))
;-> {:dependencies {}, :dependents {}}
lgrapenthin commented
Removing non existing edges also seems to implicitly add nil under them
(-> (dep/graph)
(dep/remove-edge :a :b))
;-> {:dependencies {:a nil}, :dependents {:b nil}}
Deleted user commented
Thank you for the report.
This Git repository is a copy of clojure.tools.namespace.dependency
from tools.namespace and is covered by the clojure-contrib process. Please file an issue at http://dev.clojure.org/jira/browse/TNS