You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ivy-user@ant.apache.org by Stephane Bailliez <sb...@gmail.com> on 2007/03/06 13:55:46 UTC

useOrigin and type filtering

I'm messing with useOrigin and the culprit is actually completely lost 
in getting me the correct artifacts when using cachepath.
I have artifacts with different types for the same conf(ie: jar, source, 
javadoc) and while it works fine when doing a useOrigin=false with using 
useOrigin=true it manages to push me artifacts of type source instead of 
jar, so some filtering is going berserk somewhere.

<ivy:resolve useorigin="${ivy.useorigin}" conf="*" showprogress="false" 
type="jar,javadoc,source"/>
<ivy:cachepath useorigin="${ivy.useorigin}" 
pathid="ivy.compile.classpath" type="jar" conf="compile"/>

I haven't yet investigated the problem, but ouf of curiosity, has anyone 
seeing this behavior before ?
(ie: I'm using 1.4.1)

Side note: there should be absolutely no need whatsoever to duplicate 
useorigin in every task once it has been resolved. This is just a killer 
for modularity as if I want to enable this feature, I have to go through 
all build files that use retrieve to do some special packaging or 
layout. This information should be self contained in the resolution 
data. Scoping should hopefully help to get rid of this.

-- stephane

Re: useOrigin and type filtering

Posted by Xavier Hanin <xa...@gmail.com>.
On 3/6/07, Stephane Bailliez <sb...@gmail.com> wrote:
>
> I'm messing with useOrigin and the culprit is actually completely lost
> in getting me the correct artifacts when using cachepath.
> I have artifacts with different types for the same conf(ie: jar, source,
> javadoc) and while it works fine when doing a useOrigin=false with using
> useOrigin=true it manages to push me artifacts of type source instead of
> jar, so some filtering is going berserk somewhere.
>
> <ivy:resolve useorigin="${ivy.useorigin}" conf="*" showprogress="false"
> type="jar,javadoc,source"/>
> <ivy:cachepath useorigin="${ivy.useorigin}"
> pathid="ivy.compile.classpath" type="jar" conf="compile"/>
>
> I haven't yet investigated the problem, but ouf of curiosity, has anyone
> seeing this behavior before ?
> (ie: I'm using 1.4.1)


No, at least not yet :-)  And I'm surprised of this problem, because I see
no relation between the two. Except if the bug is that when using origin the
artifact type is lost... Strange.

Side note: there should be absolutely no need whatsoever to duplicate
> useorigin in every task once it has been resolved.

I agree it is weird, you can open an issue and relate it to scoping.

- Xavier

This is just a killer
> for modularity as if I want to enable this feature, I have to go through
> all build files that use retrieve to do some special packaging or
> layout. This information should be self contained in the resolution
> data. Scoping should hopefully help to get rid of this.
>
> -- stephane
>