I created a JIRA wish (IVY-1134) for this where I maybe should have posted it here first:
I am trying to integrate an Eclipse Zest (GEF) Ivy resolve visualizer into IvyDE (see IVYDE-208) to help our developers visualize the eviction process and to see how transitive dependencies were brought into the classpath. What started out as a visualizer is now being considered as a type of editor as well. Of course, if we edit a node visually (whether it be changing a version, excluding a node, toggling the transitive attribute, etc.), we have to perform a resolve against the whole ivy file associated with that visualization (which may not be quick). I want to get some opinions on an incremental resolve feature, which would somehow compare the cached resolve file with the changing ivy file and resolve just the delta. So just brainstorming, here are my thoughts: We could persist a copy in the user's local cache of relevant pieces (dependencies, maybe configurations) of the ivy file whenever a resolve is performed so that the file can be compared on a subsequent resolve. We can pretty easily resolve just the particular dependencies that change using the existing infrastructure, and I think the results could only have two impacts on the rest of the tree stemming from evictions and exclusions. Thoughts?