ant-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jon Schneider (JIRA)" <>
Subject [jira] Commented: (IVYDE-208) Ivy Resolve Visualizer
Date Tue, 06 Oct 2009 12:25:31 GMT


Jon Schneider commented on IVYDE-208:

I had already started thinking about hooking it into the EditableModuleDescriptor class to
allow us to edit versions.  

I could see many of those tasks being useful.  The problem I see is after each step we would
have to resolve the whole file again (which may not always be quick).  I briefly entertained
the idea of trying to dynamically resolve against just the subtree (comprised of the node
you are modifying and its dependencies) that you are modifying, but a modification anywhere
in the dependency tree affects the whole tree's evictions.

That leaves us to a batch changing strategy by which the user conducts a series of operations
and then forces the resolve and then persists the changes.  I can imagine some terribly complicated
scenarios where a user changes two nodes and one of the two modified nodes winds up being
evicted as a result of the change to the other.  Then how do we decide which change goes forward
and in what order?

I feel that it has the possibility of being more complicated than beneficial before long.
 Maybe if Ivy had an incremental resolve feature...

> Ivy Resolve Visualizer
> ----------------------
>                 Key: IVYDE-208
>                 URL:
>             Project: IvyDE
>          Issue Type: New Feature
>            Reporter: Jon Schneider
>         Attachments: evicted.gif, focus.gif, ivy.xml, ivyde-208.patch, ivyde-208.patch,
ivyde-208.patch, screenshot-1.jpg, screenshot-2.jpg, screenshot-3.jpg, screenshot-4.jpg, screenshot-5.jpg,
> I am kind of excited about this one.  I would like to be able to see the resolve report
depicted graphically, showing me clearly how particular dependencies wound up on the classpath,
what nodes got evicted, what dependencies a particular transitive dependency has, etc etc.
 Ivy can sometimes fall into the category of "automagically" doing so much for us on the classpath,
that developers can take it for granted.  Especially when a version conflict arises out of
a resolution (by which two different revisions are resolved that aren't under the same eviction
context), I see developers getting very confused.  I hope this visualization will help them

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message