incubator-ivy-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Xavier Hanin (JIRA)" <>
Subject [jira] Commented: (IVY-382) Ivy dies when it can't find evicted modules
Date Thu, 11 Jan 2007 06:59:27 GMT


Xavier Hanin commented on IVY-382:

Conflict resolution and revision eviction is not a simple thing, because you have only a limited
a view of the whole dependency graph at the time you look for a revision. That's why order
in dependencies is important : if Ivy find the dependency on revision 1 of D before finding
the dependency on revision 2, it will try to find it's module descriptor, or an artifact if
no module descriptor is found. If neither one or the other is found, it is considered as an
error, since at this time Ivy doesn't know that it will be evicted by the dependency on revision
2. This could be solved by marking the revision as being not found, and then only give a warning
because we later find the revision 2.

If dependency on revision 2 is found before, then I think Ivy will still try to find the module
descriptor of revision 1 to merge them. Indeed, imagine you had a configuration in revision
1 on which B depends that no longer exist in revision 2. This would cause an error without
merging. That's why I think there is an error too in this case, even if I'm not sure. The
problem is easier to solve in this case, because we already have the information that the
revision 1 will be evicted.

> Ivy dies when it can't find evicted modules
> -------------------------------------------
>                 Key: IVY-382
>                 URL:
>             Project: Ivy
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.4
>         Environment: JDK 1.5
>            Reporter: John Williams
> Suppose module A depends on B and C, B depends of revision 1 of D, and C depends revision
2 of D.  Attempting to resolve A will fail if Ivy can't find revision 1 of D, even though
only revision 2 is actually needed.

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:


View raw message