ant-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alexander Foreman (JIRA)" <j...@apache.org>
Subject [jira] Created: (IVY-796) Ivy downloads all tasks in a resolve even if we are filtering on type.
Date Wed, 16 Apr 2008 14:53:21 GMT
Ivy downloads all tasks in a resolve even if we are filtering on type.
----------------------------------------------------------------------

                 Key: IVY-796
                 URL: https://issues.apache.org/jira/browse/IVY-796
             Project: Ivy
          Issue Type: Improvement
          Components: Core
    Affects Versions: 2.0.0-beta-2
            Reporter: Alexander Foreman
            Priority: Minor


When trying to filter on type we grab everything first then filter for the classpath.

This in my opinion has 2 problems.
1. If we want to filter on type but download everything, we waste time downloading files that
we do not want.
2. If we have a situation where files are in different places on different architectures 
and only available in one place we can not write an ivy file which can say get everything
that is a .so file on unix and .dll on windows.

number 2. Maybe more specific to my infrastructure so not high priority.


On Thu, Apr 3, 2008 at 11:58 AM, Foreman, Alex (IT) < Alexander.Foreman@morganstanley.com>
wrote:

> Thanks for the reply,
>
> ON further examination it is doing as you describe.
>
> 1. Search for all artifacts in conf.
> 2. Download all artifacts in conf.
> 3. Filter by type and place only those artifacts on the classpath.
>
> Can this be modified so we only download the artifacts that are filtered.
>  Or at least have a attribute to turn it on?
>
> I can see this functionality being more obvious:
>
> 1. Search for all artifacts in conf of type="x(,y...)"
> 2. Download only these artifacts Completely ignoring any of the wrong 
> type.
>
> What do you guys think?

I agree it would be nice to improve this, but we'd have to think about all the side effects,
since a resolve can be reused, possibly with a different filter. Maybe dependency resolution
and metadata collection should be fully done, and only artifacts download would be skipped.
Then later if an artifact is missing Ivy could simply download it. Please open an issue in
JIRA to ask for that.

Xavier


>
> Alex Foreman
> Morgan Stanley | Technology
> 20 Cabot Square | Canary Wharf | Floor 06 London, E14 4QW
> Phone: +44 20 7677-5732
> Alexander.Foreman@morganstanley.com
>
> -----Original Message-----
> From: Xavier Hanin [mailto:xavier.hanin@gmail.com]
> Sent: 28 March 2008 14:29
> To: ivy-user@ant.apache.org
> Subject: Re: IvyDE Accepted Types
>
> On Fri, Mar 28, 2008 at 11:29 AM, Foreman, Alex (IT) < 
> Alexander.Foreman@morganstanley.com> wrote:
>
> > I have set Accepted types to:
> > jar, zip, dll
> >
> > Within IvyDE
> >
> > I have a ivyfile which defines a list of .so files and .dll files.
> > All in the same configuration.
> >
> > I want to grab stuff by type only.
> >
> > When building on unix I want to say:
> > Give me this module and all its artifacts that are .so types only
> >
> > Eg
> > Artifact -> x.dll
> > Artifact -> y.dll
> > Artifact -> z.so
> >
> > Would return just z.so as type="jar,so"
> >
> > This doesn't seem to work in unix either or from the dos shell.
> > <ivy:cachepath pathid="tests" conf="jni" type="so" useOrigin="true" 
> > /> Grabs everything in the configuration regardless of type.
> >
> > Is this a bug?  Missing functionality?  As according to this page:
> > http://ant.apache.org/ivy/history/latest-milestone/use/cachepath.htm
> > l
> > This is what 'type' does.
> >
> > This is a major blocker for me.  If I can say grab everything that 
> > is of types x and y and ignore everything else then I have pretty 
> > much solved my problems with getting JNIs working
>
>
> It should work. But note that the filter is applied by cachepath only, 
> not by the resolve. So Ivy will actually download all artifacts, but 
> only so should be in your path 'tests' after the call to cachepath. If 
> it doesn't work like that, you can open an issue, describing precisely 
> how you call cachepath, what is your ivy file for the dependency, and 
> what you get in your path.
>
> Xavier
>
> > without hassle.
> >
> >
> > Many thanks for your help,
> >
> > Alex Foreman
> > Morgan Stanley | Technology
> > 20 Cabot Square | Canary Wharf | Floor 06 London, E14 4QW
> > Phone: +44 20 7677-5732
> > Alexander.Foreman@morganstanley.com
> > --------------------------------------------------------
> >
> > NOTICE: If received in error, please destroy and notify sender. 
> > Sender does not intend to waive confidentiality or privilege. Use of 
> > this email is prohibited when received in error.
> >
>
>
>
> --
> Xavier Hanin - Independent Java Consultant http://xhab.blogspot.com/ 
> http://ant.apache.org/ivy/ http://www.xoocode.org/
> --------------------------------------------------------
>
> NOTICE: If received in error, please destroy and notify sender. Sender 
> does not intend to waive confidentiality or privilege. Use of this 
> email is prohibited when received in error.
>



--
Xavier Hanin - Independent Java Consultant http://xhab.blogspot.com/ http://ant.apache.org/ivy/
http://www.xoocode.org/


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


Mime
View raw message