ant-ivy-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stephen Haberman <step...@exigencecorp.com>
Subject Re: transitive sources revisited
Date Wed, 04 Aug 2010 06:28:22 GMT

> Forgive me for nitpicking terminology, but JIRA usage aside, this is not so
> much a bug to be fixed as a feature request.

We will have to disagree on that. :-)

> Once you add "sources" (or is it "source"?) and "javadoc", where do
> you stop? Do you add scaladoc, groovydoc, binaries?

I see your broad point...

However, maven pom -> ivy xml translation is already in the Ivy
codebase--see PomModuleDescriptorBuilder.

> Correct me if I'm missing something, but it seems that the only use
> case for giving transitive source and javadoc dependencies special
> treatment is where they're being resolved from Maven repositories.

Perhaps you're misunderstanding? I definitely don't want any conf called
"sources" to always be magically transitive. If you look at this
existing Ivy-created module descriptor that reflects Velocity's pom:

http://sprunge.us/EMHQ

When it declares a dependency on commons-collection:

    <dependency org="commons-collections" name="commons-collections"
    rev="3.2.1" force="true"
    conf="compile->compile(*),master(*);runtime->runtime(*)"/>

commons-collection's runtime conf artifacts are put into Velocity's
runtime conf. Transitive. I depend on Velocity's runtime deps, I'm going
to also get commons-collection's runtime deps, and their runtime deps.

But if I want sources for all of it, I can only depend on Velocity's
sources conf and then it stops. commons-collections doesn't transitively
map its sources artifacts into Velocity's sources conf. E.g. I want:

    conf="compile->compile(*),master(*);runtime->runtime
(*);sources->sources(*)"/>

It's probably a ~5 line or so change to PomModuleDescriptorBuilder.

...that being said, IvyDE seems to be doing the right thing anyway and
picking up sources transitively without the explicit conf mapping. I
swear it did not do that this morning and that is what re-kindled my
desire to see this feature implemented.

So, given I can now transitively Ctrl-Shift-T and have IvyDE get me
the sources for any upstream project, I am somewhat placated.

- Stephen


Mime
View raw message