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 Sven Zethelius <sv...@expedia.com> on 2011/08/12 23:02:44 UTC

Ivy 2.2.0 picking wrong version when a conflict between fixed rev and ranged rev.

I have two modules (camel-cxf and com.expedia.cc.container.remoting) that share a common dependency (cxf), but the rev is different.  I'm not getting what I expect from the resolve.  This is using the default strategies and conflict manager, with ivy 2.2.0.

Ivy dependency for camel-cxf (2.7.1):
<dependency org="osgi" name="cxf" rev="[2.3.2,2.5[" conf="runtime->runtime(default)"/>

Ivy dependency for com.expedia.cc.container.remoting:
<dependency org="osgi" name="camel-cxf" rev="[2.7.1,2.7.2[" conf="runtime" />
<dependency org="osgi" name="cxf" rev="2.3.2" conf="runtime" />

Both cxf 2.3.2 and 2.4.1 exist in our repository, with ivy files.  I expected that 2.3.2 would be chosen the revision since the module is explicitly restricting to that version.  Instead, 2.4.1 is being chosen, even though it's a conflict that doesn't match com.expedia.cc.container.remoting's chosen revision on that same module.

Am I misinterpreting how the fixed rev is being interpreted, or is there something different needed for the strategies/conflict-manager?

I've tried with a no conflict-manager defined, and with
         <conflict-managers>
                <compatible-cm name="my-latest-compatible-conflict-manager" latest="latest-revision"/>
         </conflict-managers>


Below is a snippet from the resolve file:
                <module organisation="osgi" name="camel-cxf">
                        <revision name="2.7.1" status="private" pubdate="20110725113854" resolver="ThirdPartySvenz" artresolver="ThirdPartySvenz" downloaded="false" searched="true" default="false" conf="runtime(default), exportjar(default), default, runtime" position="32">
                                <metadata-artifact status="no" details="" size="1560" time="0" location="e:\build\osgi\.ivy\cache\osgi\camel-cxf\ivy-default-2.7.1.xml" searched="true" original-local-location="C:\p4\thirdparty\camel-cxf\osgi-ivy-2.7.1.xml" origin-is-local="true" origin-location="C:\p4\thirdparty\camel-cxf\osgi-ivy-2.7.1.xml"/>
                                <caller organisation="expedia" name="com.expedia.cc.container.remoting" conf="default, runtime, build, exportjar, embed" rev="[2.7.1,2.7.2[" rev-constraint-default="[2.7.1,2.7.2[" rev-constraint-dynamic="[2.7.1,2.7.2[" callerrev="working@BELSVENZ06WD"/>
                                <artifacts>
                                        <artifact name="camel-cxf" type="jar" ext="jar" status="no" details="" size="196980" time="0" location="C:\p4\thirdparty\camel-cxf\osgi\camel-cxf-2.7.1.jar">
                                                <origin-location is-local="true" location="C:\p4\thirdparty\camel-cxf\osgi\camel-cxf-2.7.1.jar"/>
                                        </artifact>
                                </artifacts>
                        </revision>
                </module>
                <module organisation="osgi" name="cxf">
                        <revision name="2.4.1" status="private" pubdate="20110808134256" resolver="ThirdPartySvenz" artresolver="ThirdPartySvenz" downloaded="false" searched="true" default="false" conf="runtime(default), default, runtime, exportjar(default)" position="36">
                                <metadata-artifact status="no" details="" size="1286" time="0" location="e:\build\osgi\.ivy\cache\osgi\cxf\ivy-default-2.4.1.xml" searched="true" original-local-location="C:\p4\thirdparty\cxf\osgi-ivy-2.4.1.xml" origin-is-local="true" origin-location="C:\p4\thirdparty\cxf\osgi-ivy-2.4.1.xml"/>
                                <caller organisation="osgi" name="camel-cxf" conf="runtime" rev="[2.3.2,2.5[" rev-constraint-default="[2.3.2,2.5[" rev-constraint-dynamic="[2.3.2,2.5[" callerrev="2.7.1"/>
                                <caller organisation="expedia" name="com.expedia.cc.container.remoting" conf="default, runtime, build, exportjar, embed" rev="2.3.2" rev-constraint-default="2.3.2" rev-constraint-dynamic="2.3.2" callerrev="working@BELSVENZ06WD"/>
                                <artifacts>
                                        <artifact name="cxf-bundle" type="jar" ext="jar" status="no" details="" size="5531464" time="0" location="C:\p4\thirdparty\cxf\osgi\cxf-bundle-2.4.1.jar">
                                                <origin-location is-local="true" location="C:\p4\thirdparty\cxf\osgi\cxf-bundle-2.4.1.jar"/>
                                        </artifact>
                                </artifacts>
                        </revision>
                        <revision name="2.3.2" status="private" pubdate="20110201141351" resolver="ThirdPartyOrg" artresolver="ThirdPartyOrg" evicted="latest-revision" evicted-reason="" downloaded="false" searched="true" default="false" conf="runtime(default), exportjar(default), default, runtime" position="-1">
                                <metadata-artifact status="no" details="" size="1194" time="0" location="e:\build\osgi\.ivy\cache\osgi\cxf\ivy-default-2.3.2.xml" searched="true" original-local-location="\\karmalab.net\builds\ivyreps\thirdparty\cxf\osgi-ivy-2.3.2.xml" origin-is-local="true" origin-location="\\karmalab.net\builds\ivyreps\thirdparty\cxf\osgi-ivy-2.3.2.xml"/>
                                <evicted-by rev="2.4.1"/>
                                <caller organisation="expedia" name="com.expedia.cc.container.remoting" conf="default, runtime, build, exportjar, embed" rev="2.3.2" rev-constraint-default="2.3.2" rev-constraint-dynamic="2.3.2" callerrev="working@BELSVENZ06WD"/>
                                <artifacts>
                                </artifacts>
                        </revision>
                </module>