Why not delay the circular dependency check untill the resolve is finished?
Maybe the module causing the circular dependency gets evicted so there might be 
no problem at all?

Maarten

----- Original Message ----
From: Xavier Hanin (JIRA) <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
Sent: Friday, December 7, 2007 9:22:43 PM
Subject: [jira] Resolved: (IVY-663) latest compatible conflict manager fails 
with circular dependencies and dynamic revision



I've just committed a fix for this, but it slightly changes the way
 circular dependencies are handled, we may have to discuss that further.

The problem is that for the moment we consider we have a circular
 dependency as soon as we find the same module id twice in the visit path. It
 means this happens before any conflict resolution is done, therefore
 letting no chance to a conflict manager to deal with the problem. I
 haven't actually changed this yet, I've only delayed the moment when
 isCircular is checked by the ResolveEngine to know if it has to continue the
 graph visit. But I'm wondering if we shouldn't delay the whole circular
 dependency check (including the call to CircularDependencyStrategy) to
 the moment we have twice the same ModuleRevisionId in the path, and
 not only ModuleId. We should still handle the case of the module
 currently resolved specifically, but I think it makes sense to say that
 #A;1->#B;1->#A;2 is not a circular dependency (this can only happen with a
 conflict manager accepting multiple revisions of the same module).

Thoughts?






      
____________________________________________________________________________________
Looking for last minute shopping deals?  
Find them fast with Yahoo! Search.  
http://tools.search.yahoo.com/newsearch/category.php?category=shopping

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to