Author: gscokart
Date: Tue Dec 4 03:02:01 2007
New Revision: 600876
URL: http://svn.apache.org/viewvc?rev=600876&view=rev
Log:
fix regression found when configuration extends private confuration and is
transfered to an other version because of a conflict detected
Added:
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modA/
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modA/ivys/
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modA/ivys/ivy-1.0.xml
(with props)
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modB/
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modB/ivys/
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modB/ivys/ivy-1.0.xml
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modC/
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modC/ivys/
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modC/ivys/ivy-1.0.xml
(with props)
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modC/ivys/ivy-1.1.xml
(with props)
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/root/
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/root/ivys/
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/root/ivys/ivy-1.0.xml
Modified:
ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/ResolveEngine.java
ant/ivy/core/trunk/test/java/org/apache/ivy/core/resolve/ResolveTest.java
Modified:
ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/ResolveEngine.java
URL:
http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/ResolveEngine.java?rev=600876&r1=600875&r2=600876&view=diff
==============================================================================
--- ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/ResolveEngine.java
(original)
+++ ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/ResolveEngine.java
Tue Dec 4 03:02:01 2007
@@ -667,7 +667,12 @@
// been updated when evicting another module), we fetch them
now
confs = dep.getConfsToFetch();
for (int i = 0; i < confs.length; i++) {
- fetchDependencies(dep, confs[i], true);
+ //shouldBeFixed=false to because some of those
dependencies might
+ //be private when they were actually extending public conf.
+ //Should we keep two list of confs to fetch
(private&public)?
+ //I don't think, visibility is already checked, and a
change in the
+ //configuration between version might anyway have worse
problems.
+ fetchDependencies(dep, confs[i], false);
}
}
}
Modified:
ant/ivy/core/trunk/test/java/org/apache/ivy/core/resolve/ResolveTest.java
URL:
http://svn.apache.org/viewvc/ant/ivy/core/trunk/test/java/org/apache/ivy/core/resolve/ResolveTest.java?rev=600876&r1=600875&r2=600876&view=diff
==============================================================================
--- ant/ivy/core/trunk/test/java/org/apache/ivy/core/resolve/ResolveTest.java
(original)
+++ ant/ivy/core/trunk/test/java/org/apache/ivy/core/resolve/ResolveTest.java
Tue Dec 4 03:02:01 2007
@@ -3565,6 +3565,15 @@
assertEquals("1.1", dependency.getResolvedId().getRevision());
}
+
+ public void testPrivateConfigurationTransferWhenConflict() throws
Exception {
+ ResolveReport report = ivy.resolve(
+ new
File("test/repositories/1/orgConflictAndPrivateConf/root/ivys/ivy-1.0.xml").toURL(),
+ getResolveOptions(new String[] {"assembly"}));
+ assertFalse(report.hasError());
+ }
+
+
// //////////////////////////////////////////////////////////
// helper methods to ease the tests
// //////////////////////////////////////////////////////////
Added:
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modA/ivys/ivy-1.0.xml
URL:
http://svn.apache.org/viewvc/ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modA/ivys/ivy-1.0.xml?rev=600876&view=auto
==============================================================================
---
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modA/ivys/ivy-1.0.xml
(added)
+++
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modA/ivys/ivy-1.0.xml
Tue Dec 4 03:02:01 2007
@@ -0,0 +1,37 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<ivy-module version="1.0">
+ <info organisation="orgConflictAndPrivateConf"
+ module="modA"
+ revision="1.0"
+ status="integration"
+ publication="20041201120000"
+ />
+ <configurations>
+ <conf name="runtime" extends="compile"/>
+ <conf name="compile" extends="interface" visibility="private"/>
+ <conf name="interface"/>
+ <conf name="assembly"/>
+ </configurations>
+ <publications/>
+ <dependencies
defaultconfmapping="runtime->runtime;compile->interface;interface->interface"
+ confmappingoverride="true">
+ <dependency name="modC" rev="1.0" conf="compile"/>
+ </dependencies>
+</ivy-module>
Propchange:
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modA/ivys/ivy-1.0.xml
------------------------------------------------------------------------------
svn:eol-style = native
Added:
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modB/ivys/ivy-1.0.xml
URL:
http://svn.apache.org/viewvc/ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modB/ivys/ivy-1.0.xml?rev=600876&view=auto
==============================================================================
---
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modB/ivys/ivy-1.0.xml
(added)
+++
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modB/ivys/ivy-1.0.xml
Tue Dec 4 03:02:01 2007
@@ -0,0 +1,37 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<ivy-module version="1.0">
+ <info organisation="orgConflictAndPrivateConf"
+ module="modB"
+ revision="1.0"
+ status="integration"
+ publication="20041201120000"
+ />
+ <configurations>
+ <conf name="runtime" extends="compile"/>
+ <conf name="compile" extends="interface" visibility="private"/>
+ <conf name="interface"/>
+ <conf name="assembly"/>
+ </configurations>
+ <publications/>
+ <dependencies
defaultconfmapping="runtime->runtime;compile->interface;interface->interface"
+ confmappingoverride="true">
+ <dependency name="modC" rev="1.1" conf="compile"/>
+ </dependencies>
+</ivy-module>
Added:
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modC/ivys/ivy-1.0.xml
URL:
http://svn.apache.org/viewvc/ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modC/ivys/ivy-1.0.xml?rev=600876&view=auto
==============================================================================
---
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modC/ivys/ivy-1.0.xml
(added)
+++
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modC/ivys/ivy-1.0.xml
Tue Dec 4 03:02:01 2007
@@ -0,0 +1,35 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<ivy-module version="1.0">
+ <info organisation="orgConflictAndPrivateConf"
+ module="modC"
+ revision="1.0"
+ status="integration"
+ publication="20041201120000"
+ />
+ <configurations>
+ <conf name="runtime" extends="compile"/>
+ <conf name="compile" extends="interface" visibility="private"/>
+ <conf name="interface"/>
+ <conf name="assembly"/>
+ </configurations>
+ <publications/>
+ <dependencies>
+ </dependencies>
+</ivy-module>
Propchange:
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modC/ivys/ivy-1.0.xml
------------------------------------------------------------------------------
svn:eol-style = native
Added:
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modC/ivys/ivy-1.1.xml
URL:
http://svn.apache.org/viewvc/ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modC/ivys/ivy-1.1.xml?rev=600876&view=auto
==============================================================================
---
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modC/ivys/ivy-1.1.xml
(added)
+++
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modC/ivys/ivy-1.1.xml
Tue Dec 4 03:02:01 2007
@@ -0,0 +1,35 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<ivy-module version="1.0">
+ <info organisation="orgConflictAndPrivateConf"
+ module="modC"
+ revision="1.1"
+ status="integration"
+ publication="20041201120000"
+ />
+ <configurations>
+ <conf name="runtime" extends="compile"/>
+ <conf name="compile" extends="interface" visibility="private"/>
+ <conf name="interface"/>
+ <conf name="assembly"/>
+ </configurations>
+ <publications/>
+ <dependencies>
+ </dependencies>
+</ivy-module>
Propchange:
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/modC/ivys/ivy-1.1.xml
------------------------------------------------------------------------------
svn:eol-style = native
Added:
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/root/ivys/ivy-1.0.xml
URL:
http://svn.apache.org/viewvc/ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/root/ivys/ivy-1.0.xml?rev=600876&view=auto
==============================================================================
---
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/root/ivys/ivy-1.0.xml
(added)
+++
ant/ivy/core/trunk/test/repositories/1/orgConflictAndPrivateConf/root/ivys/ivy-1.0.xml
Tue Dec 4 03:02:01 2007
@@ -0,0 +1,34 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<ivy-module version="1.0">
+ <info organisation="orgConflictAndPrivateConf"
+ module="root"
+ revision="1.0"
+ status="integration"
+ publication="20041201120000"
+ />
+ <configurations>
+ <conf name="assembly"/>
+ </configurations>
+ <publications/>
+ <dependencies defaultconfmapping="assembly->assembly,runtime"
confmappingoverride="true">
+ <dependency name="modA" rev="1.0" conf="assembly"/>
+ <dependency name="modB" rev="1.0" conf="assembly"/>
+ </dependencies>
+</ivy-module>