You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ivy-commits@incubator.apache.org by xa...@apache.org on 2007/04/23 14:43:00 UTC

svn commit: r531484 - /incubator/ivy/core/trunk/doc/doc/ivyfile/configurations.html

Author: xavier
Date: Mon Apr 23 07:42:55 2007
New Revision: 531484

URL: http://svn.apache.org/viewvc?view=rev&rev=531484
Log:
Document confmappingoverride (IVY-476) (thanks to Gilles Scokart)

Modified:
    incubator/ivy/core/trunk/doc/doc/ivyfile/configurations.html

Modified: incubator/ivy/core/trunk/doc/doc/ivyfile/configurations.html
URL: http://svn.apache.org/viewvc/incubator/ivy/core/trunk/doc/doc/ivyfile/configurations.html?view=diff&rev=531484&r1=531483&r2=531484
==============================================================================
--- incubator/ivy/core/trunk/doc/doc/ivyfile/configurations.html (original)
+++ incubator/ivy/core/trunk/doc/doc/ivyfile/configurations.html Mon Apr 23 07:42:55 2007
@@ -36,8 +36,8 @@
 
 See <a href="../../doc/ivyfile/dependency#defaultconfmapping.html">examples on the dependency</a> page.
 
-<span class="since">since 1.4</span> You can activate a confmappingoverride mode for all configurations, in which case the extending configurations will override the mappings of the configurations they extend from. This is an advanced feature which should be used only if you understand its implication.
-For a discussion about the origin of this feature see <a href="./node/592">this thread</a>.
+<span class="since">since 1.4</span> You can activate a confmappingoverride mode for all configurations, in which case the extending configurations will override the mappings of the configurations they extend from.
+
 
 <h1>Attributes</h1>
 <table class="ivy-attributes">
@@ -64,7 +64,29 @@
 </tbody>
 </table>
 
-	</textarea>
+<h1>Configuration mappings details</h1>
+When Ivy parses your Ivy file, it will create (internally) modify the configuration mapping of your dependencies.
+For instance, say you have:
+<code type="xml">
+<configurations defaultconfmapping="conf1->other1;conf2->other2">
+   <conf name="conf1" />
+   <conf name="conf2" extends="conf1" />
+</configurations>
+<dependencies>
+   <dependency name="other-module" conf="conf1" />
+</dependencies>
+</code>
+When Ivy parses this file, it will construct the following dependency (in-memory only):
+<code type="xml"><dependency name="other-module" conf="conf1->other1" /></code>
+
+So, if you now resolve the conf2 configuration, you will only get the other1 dependencies of your other-module.
+
+But when you set confmappingoverride to true, Ivy will construct the following dependency in memory:
+<code type="xml"><dependency name="other-module" conf="conf1->other1;conf2->other2" /></code>
+As you can see, the defaultmappings of the extending configurations are also added (although you didn't explicitly defined them)
+
+When you now resolve the conf2 configuration, you'll get the other2 dependencies of your other-module. 
+</textarea>
 <script type="text/javascript">xooki.postProcess();</script>
 </body>
 </html>