On 8 Jan 2009, at 08:12, Xavier Hanin wrote:

These log messages are confusing, beacause they are not resolve time
conflicts, but retrieve time conflicts: when Ivy retrieves a set of
artifact, if it has to retrieve two artifacts to the same location, it
complains about a conflict. For instance if you have a dependency on
acme#foo;1.0 in conf A and acme#foo;2.0 in conf B, then retrieve both confs together with a pattern in which you do not put neither the conf nor the revision, Ivy will inform about these "conflicts", and select the latest
version (this behaviour is not currently pluggable nor configurable).

IMO adding an option to put these messages at verbose level would be nice, what could be even better is to make the behaviour pluggable/ configurable, and make the message explicit to tell that this is a retrieve conflict, not
a resolve conflict.

Is it possible that it's getting confused because the same packages are part of two different configs?

<dependency org="org.scala-lang" name="scala-compiler" rev="2.7.2" conf="bootstrap->*; test->*" /> <dependency org="org.scala-lang" name="scala-library" rev="2.7.2" />

You can see it happen immediately on my "smile" project, with a clean ivy cache. Smile is on github here:

    http://github.com/robey/smile/tree/master

(Build by just typing "ant". Nothing more than java 5 is required.)

I don't take exception to any aspect of these messages except (1) since they are not actually conflicts, (2) I want to be able to silence the messages during a build. Dropping them to verbose (as I did in my patch) is sufficient.

robey


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to