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 Pier Fumagalli <ia...@gmail.com> on 2008/06/13 13:16:18 UTC
Little problem with "strict" conflict manager...
Hello everyone...
I'm wondering if someone here can lend a hand to figure out one little
problem. I'm trying to have an uber-strict dependency resolution (if
two projects don't depend on the same version of another one, I want
the build to fail) and I've tried to use the "strict" conflict
manager, but it doesn't seem to work.
Here is my scenario:
+-----------+
| MyProject |
+-----------+
/ \
depends on / \ depends on
/ \
+-----------------------------+ +----------------------+
| CommonDependancyProject 4.1 | | SomeOtherProject 1.0 |
+-----------------------------+ +----------------------+
|
| depends on
|
+-----------------------------+
| CommonDependancyProject 3.0 |
+-----------------------------+
So, as you can see from the drawing above, I have the following:
* MyProject depends on:
-> CommonDependancyProject version 4.1
-> SomeOtherProject version 1.0
* SomeOtherProject depends on:
-> CommonDependancyProject version 3.0
In my case, CommonDependencyProject has introduced some incompatible
changes between version 4.1 and 3.0, and I want my build to fail if
this kind of collision is detected, but apparently Ivy happily ignores
it and picks up CommonDependancyProject 4.1 ignoring entirely 3.0...
I tried the following to solve this:
* I used the "strict" ConflictManager by adding in my Ivy settings file:
<settings defaultResolver="default"
defaultConflictManager="strict"/>
* Tried defining a new conflict manager and setting that as default:
<settings defaultResolver="default"
defaultConflictManager="uberstrict"/>
<conflict-managers>
<regexp-cm name="uberstrict" regexp="(.*)"/>
</confluct-managers>
* Tried writing my own conflict resolver, but nothing returned by
"resolveConflicts" seems to work
Simply my "CommonDependancyProject" version 3.0 is never-ever passed
to the conflict resolver, apparently.
I'm using 2.0 beta 2 but I've tried to download the latest head from
SVN and the behavior is the same. What am I doing (obviously) wrong?
Pier
Re: Little problem with "strict" conflict manager...
Posted by ar...@dellroad.org.
On 6/13/08, Pier Fumagalli <pi...@joost.com> wrote:
>
> On 13 Jun 2008, at 13:16, Pier Fumagalli wrote:
>
>> Hello everyone...
>>
>> I'm wondering if someone here can lend a hand to figure out one
>> little problem. I'm trying to have an uber-strict dependency
>> resolution (if two projects don't depend on the same version of
>> another one, I want the build to fail) and I've tried to use the
>> "strict" conflict manager, but it doesn't seem to work.
>
> I actually think I found what I was doing wrong.
Please tell, you've got us curious :-)
-Archie
--
Archie L. Cobbs
Re: Little problem with "strict" conflict manager...
Posted by Pier Fumagalli <pi...@joost.com>.
On 13 Jun 2008, at 13:16, Pier Fumagalli wrote:
> Hello everyone...
>
> I'm wondering if someone here can lend a hand to figure out one
> little problem. I'm trying to have an uber-strict dependency
> resolution (if two projects don't depend on the same version of
> another one, I want the build to fail) and I've tried to use the
> "strict" conflict manager, but it doesn't seem to work.
I actually think I found what I was doing wrong.
Pier