Is there a resource describing the internal data structures of Revise.jl ?
My current suspicions are:
-
somewhere inside Revise.jl there is a directed acyclic graph
-
there is some inotify-like watcher that tags nodes as “outdated”
-
there is some mechanism to propagate the “ouutdated” tag
If the above is approximately correct, is there some description of how revise works in terms of the above? I want to have a “first principles” way of reasoning about when revise.jl decides something need to be updated.
Thanks!