You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ivy-dev@incubator.apache.org by Steve Loughran <st...@apache.org> on 2006/11/07 14:03:23 UTC

Im reading the docs; starting to make sense of things.

One question: how does <ivy:buildlist/> know the order to hand things 
down to <subant/>. Does it look for matching ivy.xml files and derive 
the order that way? What happens if you have a loop.

-steve

Re:

Posted by Steve Loughran <st...@apache.org>.
Xavier Hanin wrote:
> On 11/7/06, Steve Loughran <st...@apache.org> wrote:
>>
>>
>> Im reading the docs; starting to make sense of things.
>>
>> One question: how does <ivy:buildlist/> know the order to hand things
>> down to <subant/>. Does it look for matching ivy.xml files and derive
>> the order that way? What happens if you have a loop.
> 
> 
> Yes, it looks for ivy.xml files, and derive order from the dependencies
> described in the files. Note that it only consider direct dependencies, so
> if you have A depends on B depends on C (which I note A->B->C), but only A
> and C in the set of projects you want to order, then the order will be
> undefined.
> 
> If there is a loop, it is simply ignored, and the resulting order can be
> undefined or not depending on the loop: if you have A -> B; B -> C; C -> B,
> then the order will be A, B, C; but if you have A->B; B->C; C->A, the order
> can be A, B, C or B, C, A or C, B, A depending on the order in which the
> modules are first considered.

OK.


> 
> BTW, shouldn't this mail go to the ivy-user list?

Yes, but at this stage in the project's growth we may as well talk on 
the dev  list, as we need as many of those users coding to get the ivy 
community together.



Re:

Posted by Xavier Hanin <xa...@gmail.com>.
On 11/7/06, Steve Loughran <st...@apache.org> wrote:
>
>
> Im reading the docs; starting to make sense of things.
>
> One question: how does <ivy:buildlist/> know the order to hand things
> down to <subant/>. Does it look for matching ivy.xml files and derive
> the order that way? What happens if you have a loop.


Yes, it looks for ivy.xml files, and derive order from the dependencies
described in the files. Note that it only consider direct dependencies, so
if you have A depends on B depends on C (which I note A->B->C), but only A
and C in the set of projects you want to order, then the order will be
undefined.

If there is a loop, it is simply ignored, and the resulting order can be
undefined or not depending on the loop: if you have A -> B; B -> C; C -> B,
then the order will be A, B, C; but if you have A->B; B->C; C->A, the order
can be A, B, C or B, C, A or C, B, A depending on the order in which the
modules are first considered.

BTW, shouldn't this mail go to the ivy-user list?

Xavier

-steve
>