ant-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From xav...@apache.org
Subject svn commit: r633793 [2/2] - /ant/ivy/site/target/history/latest-milestone/book.html
Date Wed, 05 Mar 2008 09:00:52 GMT

Modified: ant/ivy/site/target/history/latest-milestone/book.html
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/latest-milestone/book.html?rev=633793&r1=633792&r2=633793&view=diff
==============================================================================
--- ant/ivy/site/target/history/latest-milestone/book.html (original)
+++ ant/ivy/site/target/history/latest-milestone/book.html Wed Mar  5 01:00:51 2008
@@ -24,7 +24,7 @@
 	
 
 	<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">
-<title>Documentation (2.0.0-beta1) | Ivy</title>
+<title>Documentation (2.0.0-beta2) | Ivy</title>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
   <link rel="stylesheet" type="text/css" href="../../style/print-style.css" />
 
@@ -47,7 +47,7 @@
 </table>
 
 		<div id="main">
-            <div id="xooki-messages" onclick="xooki.html.hide('xooki-messages')" style="zIndex:999;display:none;position:absolute;top:30px;padding:10px;border-style:solid;background:#eeeeee;"></div><div class='toc-title toc-title-1'>Documentation (2.0.0-beta1)</div><br class="xooki-br"/>Welcome to the official Ivy documentation.<br class="xooki-br"/><br class="xooki-br"/><h1>What is Ivy?</h1>
+            <div id="xooki-messages" onclick="xooki.html.hide('xooki-messages')" style="zIndex:999;display:none;position:absolute;top:30px;padding:10px;border-style:solid;background:#eeeeee;"></div><div class='toc-title toc-title-1'>Documentation (2.0.0-beta2)</div><br class="xooki-br"/>Welcome to the official Ivy documentation for 2.0.0-beta2.<br class="xooki-br"/>The release notes of this version are available <a href="../../history/latest-milestone/release-notes.html">here</a>.<br class="xooki-br"/><br class="xooki-br"/><h1>What is Ivy?</h1>
 Ivy is a tool for managing (recording, tracking, resolving and reporting) project dependencies. It is characterized by the following:<br class="xooki-br"/><ol>
 <li>flexibility and configurability - Ivy is essentially process agnostic and is not tied to any methodology or structure. Instead it provides the necessary flexibility and configurability to be adapted to a broad range of dependency management and build processes.</li>
 
@@ -57,7 +57,7 @@
 <div class="postit" style="width: 250px;">
 Tip: The menu on the left is dynamic, you  can click on the arrows to browse the menu without going to each page.
 </div>
-This documentation has been migrated from the old Ivy web site hosted by Jayasoft, feel free to report any problem on the <a href="../../mailing-lists.html">Mailing lists</a>.<br class="xooki-br"/><br class="xooki-br"/>If you browse this documentation from your installation of Ivy, you can also check the <a href="http://ant.apache.org/ivy/">online version</a> for latest updates.<br class="xooki-br"/><br class="xooki-br"/>You can also browse this documentation offline either by downloading the documentation distribution, or by checking out the doc directory from svn. This documentation uses <a href="http://xooki.sourceforge.net/">xooki</a> as documentation engine, so you can very easily <a href="../../get-involved.html">edit it and submit patches</a> when you browse it from source.<br class="xooki-br"/><br class="xooki-br"/>Since Ivy 2.0.0-alpha-2, we keep an online history of the documentation. You can thus browse history versions online (in the history menu in the web site)
  and even check the trunk version documentation currently in development.<br class="xooki-br"/><br class="xooki-br"/>For earlier versions, we suggest downloading the documentation to browse the documentation corresponding to the version you use. The full history of Ivy versions with corresponding links for download is available in the history menu on the web site.<br class="xooki-br"/><br class="xooki-br"/><h1>Other places to go</h1>
+This documentation has been migrated from the old Ivy web site hosted by Jayasoft, feel free to report any problem on the <a href="../../mailing-lists.html">Mailing lists</a>.<br class="xooki-br"/><br class="xooki-br"/>If you browse this documentation from your installation of Ivy, you can also check the <a href="http://ant.apache.org/ivy/">online version</a> for latest updates.<br class="xooki-br"/><br class="xooki-br"/>You can also browse this documentation offline either by downloading the documentation distribution, or by checking out the doc directory from svn. This documentation uses <a href="http://xooki.sourceforge.net/">xooki</a> as documentation engine, so you can very easily <a href="../../get-involved.html">edit it and submit patches</a> when you browse it from source.<br class="xooki-br"/><br class="xooki-br"/>A <a href="book.html">printer-friendly version</a> of this whole documentation is also provided for your convenience.<br class="xooki-br"/><br class="xook
 i-br"/>Since Ivy 2.0.0-alpha-2, we keep an online history of the documentation. You can thus browse history versions online (in the history menu in the web site) and even check the trunk version documentation currently in development.<br class="xooki-br"/><br class="xooki-br"/>For earlier versions, we suggest downloading the documentation to browse the documentation corresponding to the version you use. The full history of Ivy versions with corresponding links for download is available in the history menu on the web site.<br class="xooki-br"/><br class="xooki-br"/><h1>Other places to go</h1>
 Check Ivy <a href="../../features.html">features</a>. <br class="xooki-br"/>Read our <a href="../../faq.html">FAQ</a>.<br class="xooki-br"/>Ask for help on our <a href="../../mailing-lists.html">mailing lists</a>.<br class="xooki-br"/>Report bug or feature request in our <a href="../../issues.html">issue tracking system</a>.<br class="xooki-br"/>Check <a href="../../links.html">external tools and resources</a>.<br class="xooki-br"/><br class="xooki-br"/><h1>Overview</h1>
 This documentation is decomposed in 3 main parts:
 <ul>
@@ -68,41 +68,40 @@
 </ul>
 <hr/><div class='toc-title toc-title-2'>Release Notes</div><br class="xooki-br"/><h2>Announcement</h2>
 <pre>
-Dec 13 2007 - The Apache Ivy project is please to announce its<br class="xooki-br"/>2.0.0 beta 1 release, a new step on the road toward 2.0 final.<br class="xooki-br"/><br class="xooki-br"/>Ivy is a tool for managing (recording, tracking, resolving and<br class="xooki-br"/>reporting) project dependencies, characterized by flexibility,<br class="xooki-br"/>configurability, and tight integration with Apache Ant.<br class="xooki-br"/><br class="xooki-br"/>Apache Ivy has recently graduated from the Apache Incubator as a<br class="xooki-br"/>subproject of Apache Ant, as such this is its first release as an<br class="xooki-br"/>official Apache project.<br class="xooki-br"/><br class="xooki-br"/>The status of this version is a beta, meaning that we encourage<br class="xooki-br"/>users to try it out. This version is already providing a good stability and<br class="xooki-br"/>robustness. API and features are still subject to change though.<br class="xooki-br"/><br class="xooki-br"/>K
 ey features of the 2.0.0-beta1 release are<br class="xooki-br"/>* enhanced Maven2 compatibility<br class="xooki-br"/>* improved concurrency support with cache locking and atomic publish<br class="xooki-br"/>* all tutorials have been reviewed to be in sync with 2.0 changes<br class="xooki-br"/>* numerous bug fixes as documented in Jira and in the release notes<br class="xooki-br"/><br class="xooki-br"/>Issues should be reported to:<br class="xooki-br"/><a href="https://issues.apache.org/jira/browse/IVY">https://issues.apache.org/jira/browse/IVY</a><br class="xooki-br"/><br class="xooki-br"/>Download the 2.0.0-beta1 release files at:<br class="xooki-br"/><a href="http://ant.apache.org/ivy/download.cgi">http://ant.apache.org/ivy/download.cgi</a><br class="xooki-br"/><br class="xooki-br"/>More information can be found on the Ivy website:<br class="xooki-br"/><a href="http://ant.apache.org/ivy/">http://ant.apache.org/ivy/</a><br class="xooki-br"/><br class="xooki-br"/>Regards,<br
  class="xooki-br"/>Xavier Hanin (2.0.0-beta1 release mgr) 
+Mar 4 2008 - The Apache Ivy project is pleased to announce its<br class="xooki-br"/>2.0.0 beta 2 release, a new step on the road toward 2.0 final.<br class="xooki-br"/><br class="xooki-br"/>Ivy is a tool for managing (recording, tracking, resolving and<br class="xooki-br"/>reporting) project dependencies, characterized by flexibility,<br class="xooki-br"/>configurability, and tight integration with Apache Ant.<br class="xooki-br"/><br class="xooki-br"/>This is a beta release, for wide testing with users. Problems found<br class="xooki-br"/>at this phase can be fixed in the final release, so now is a good time to<br class="xooki-br"/>download and use it. Although there may be some changes at<br class="xooki-br"/>the API level, it is already being in production builds in many large Java<br class="xooki-br"/>projects.<br class="xooki-br"/><br class="xooki-br"/>Key features of the 2.0.0-beta2 release are<br class="xooki-br"/>* enhanced Maven2 compatibility, with a fully rewritte
 n pom parser<br class="xooki-br"/>* improved cache management, including dynamic revision caching <br class="xooki-br"/>  with fine grain TTL<br class="xooki-br"/>* namespace aware validation, allowing to use validation with <br class="xooki-br"/>  extra attributes<br class="xooki-br"/>* easier settings loading, which do not require an id anymore<br class="xooki-br"/>* numerous bug fixes as documented in Jira and in the release notes<br class="xooki-br"/><br class="xooki-br"/>Issues should be reported to:<br class="xooki-br"/><a href="https://issues.apache.org/jira/browse/IVY">https://issues.apache.org/jira/browse/IVY</a><br class="xooki-br"/><br class="xooki-br"/>Download the 2.0.0-beta2 release files at:<br class="xooki-br"/><a href="http://ant.apache.org/ivy/download.cgi">http://ant.apache.org/ivy/download.cgi</a><br class="xooki-br"/><br class="xooki-br"/>More information can be found on the Ivy website:<br class="xooki-br"/><a href="http://ant.apache.org/ivy/">http://an
 t.apache.org/ivy/</a><br class="xooki-br"/><br class="xooki-br"/>Regards,<br class="xooki-br"/>Xavier Hanin (2.0.0-beta2 release mgr) 
 </pre>
 
 <h2>Release Notes</h2>
+
 CONTENTS<br class="xooki-br"/>1. What is Apache Ivy?<br class="xooki-br"/>2. Status of this release<br class="xooki-br"/>3. Major Changes in this Release<br class="xooki-br"/>4. Migrating from Jayasoft Ivy to Apache Ivy<br class="xooki-br"/>5. How to Get Involved<br class="xooki-br"/>6. How to Report Issues<br class="xooki-br"/>7. Committers and Contributors for this release<br class="xooki-br"/>8. List of Changes in this Release   <br class="xooki-br"/>   <br class="xooki-br"/>   <br class="xooki-br"/><h3>1. What is Apache Ivy?</h3>
 
-Apache Ivy is a tool for managing (recording, tracking, resolving and reporting) <br class="xooki-br"/>project dependencies. <br class="xooki-br"/>It is characterized by the following:<br class="xooki-br"/><br class="xooki-br"/>   1. flexibility and configurability <br class="xooki-br"/>   		Apache Ivy is essentially process agnostic and is not tied to any <br class="xooki-br"/>   		methodology or structure. <br class="xooki-br"/>   		Instead it provides the necessary flexibility and configurability <br class="xooki-br"/>   		to be adapted to a broad range of dependency management and build <br class="xooki-br"/>   		processes.<br class="xooki-br"/>   2. tight integration with Apache Ant<br class="xooki-br"/>   		while available as a standalone tool, Apache Ivy works particularly well <br class="xooki-br"/>   		with Apache Ant providing a number of powerful Ant tasks ranging <br class="xooki-br"/>   		from dependency resolution to dependency reporting and publication.<br cla
 ss="xooki-br"/><br class="xooki-br"/><h3>2. Status of this release </h3>
+Apache Ivy is a tool for managing (recording, tracking, resolving and reporting) <br class="xooki-br"/>project dependencies. <br class="xooki-br"/>It is characterized by the following:<br class="xooki-br"/><br class="xooki-br"/>   1. flexibility and configurability <br class="xooki-br"/>   		Apache Ivy is essentially process agnostic and is not tied to any <br class="xooki-br"/>   		methodology or structure. <br class="xooki-br"/>   		Instead it provides the necessary flexibility and configurability <br class="xooki-br"/>   		to be adapted to a broad range of dependency management and build <br class="xooki-br"/>   		processes.<br class="xooki-br"/>   2. tight integration with Apache Ant<br class="xooki-br"/>   		while available as a standalone tool, Apache Ivy works particularly well <br class="xooki-br"/>   		with Apache Ant providing a number of powerful Ant tasks ranging <br class="xooki-br"/>   		from dependency resolution to dependency reporting and publication.<br cla
 ss="xooki-br"/><br class="xooki-br"/><h3>2. Status of this release</h3>
 
-This is the first release of Ivy since it has graduated as a sub project of Apache Ant. <br class="xooki-br"/>As a beta version, we encourage the use of this version for testing and validation.<br class="xooki-br"/>Still API and features are still likely to change until final 2.0.0 version. <br class="xooki-br"/><br class="xooki-br"/>The current production quality version is still 1.4.1, which has not been produced <br class="xooki-br"/>within the Apache Software Foundation.<br class="xooki-br"/><br class="xooki-br"/><h3>3. Major Changes in this Release</h3>
+This is the second release of Ivy since it has graduated as a sub project of Apache Ant. <br class="xooki-br"/>As a beta version, we encourage the use of this version for testing and validation.<br class="xooki-br"/>Still API and features are still likely to change until final 2.0.0 version. <br class="xooki-br"/><br class="xooki-br"/>The current production quality version is still 1.4.1, which has not been produced <br class="xooki-br"/>within the Apache Software Foundation.<br class="xooki-br"/><br class="xooki-br"/><h3>3. Major Changes in this Release</h3>
 
-This section describes what has changed between version 1.4.1 and this version of Apache Ivy.<br class="xooki-br"/><br class="xooki-br"/>This new version of Apache Ivy is almost fully compatible with previous versions as long as you do not use custom plugins: Ivy API has changed, but not its behavior.<br class="xooki-br"/><br class="xooki-br"/>Some tasks and configuration elements have been renamed, but the old versions<br class="xooki-br"/>are still available, they are only deprecated (you will see deprecated warnings). <br class="xooki-br"/><br class="xooki-br"/><h4>3.1. Java Package Name Changes</h4>
+This section describes what has changed between version 1.4.1 and this version of <br class="xooki-br"/>Apache Ivy which may cause incompatibilities. For a full list of detailed changes,<br class="xooki-br"/>please refer to CHANGES.txt file.<br class="xooki-br"/><br class="xooki-br"/>This new version of Apache Ivy is almost fully compatible with 1.4 version as long <br class="xooki-br"/>as you do not use custom plugins: Ivy API has changed, but not its behavior.<br class="xooki-br"/><br class="xooki-br"/>Some tasks and configuration elements have been renamed, but the old versions<br class="xooki-br"/>are still available, they are only deprecated (you will see deprecated warnings). <br class="xooki-br"/><br class="xooki-br"/><h4>3.1. Java Package Name Changes</h4>
 
 All of the Ivy Java package names have changed in Apache Ivy. They now start <br class="xooki-br"/>with org.apache rather than fr.jayasoft. There have been other changes as well. <br class="xooki-br"/>Important refactorings have done on the source code to ease the understanding<br class="xooki-br"/>of Ivy internal architecture by new developers.<br class="xooki-br"/><br class="xooki-br"/>A class named org.apache.ivy.Ivy14 is provided with an API compatible with the<br class="xooki-br"/>fr.jayasoft.Ivy class of Ivy 1.4.1, to ease migration to this new version.<br class="xooki-br"/><br class="xooki-br"/><h4>3.2. Configuration replaced by Settings</h4>
 
-Configuration used to have two meanings in prior Ivy versions, causing some confusion with new users.<br class="xooki-br"/>To avoid this confusion, Apache Ivy calls settings instead of configuration the files used to customize Ivy. Configuration is still used for module configurations.<br class="xooki-br"/><br class="xooki-br"/>Besides the changes in the documentation, this renaming also imply a modification in settings files, which now use ivysettings as root element instead of ivyconf, and settings instead of conf element to define top level defaults (such as defaultCache, ...).<br class="xooki-br"/>Previous names have been deprecated, so previous settings files can still be used, but you will see a deprecation warning.<br class="xooki-br"/><br class="xooki-br"/><h4>3.3. Review of settings loading</h4>
+Configuration used to have two meanings in prior Ivy versions, causing some confusion<br class="xooki-br"/>with new users.<br class="xooki-br"/>To avoid this confusion, Apache Ivy calls settings instead of configuration the files<br class="xooki-br"/>used to customize Ivy. Configuration is still used for module configurations.<br class="xooki-br"/><br class="xooki-br"/>Besides the changes in the documentation, this renaming also imply a modification<br class="xooki-br"/>in settings files, which now use ivysettings as root element instead of ivyconf,<br class="xooki-br"/>and settings instead of conf element to define top level defaults (such as <br class="xooki-br"/>defaultCache, ...).<br class="xooki-br"/>Previous names have been deprecated, so previous settings files can still be used, but <br class="xooki-br"/>you will see a deprecation warning.<br class="xooki-br"/><br class="xooki-br"/><h4>3.3. Review of settings loading</h4>
 
-This new Ivy version experience with a new way of loading the settings. The configure task is deprecated, and replaced by a settings datatype. By using the settings datatype, you can easily use several settings inside one Ant build script, and use a scope to tell Ivy which settings to use when calling a task which requires some settings.<br class="xooki-br"/><br class="xooki-br"/>This is still an experiment though, so feedback is very welcome in the mailing lists.<br class="xooki-br"/><br class="xooki-br"/><h4>3.4. Public resolver in default settings is now ibiblio in m2 compatible mode</h4>
+This new Ivy version experience with a new way of loading the settings. The configure task<br class="xooki-br"/>is deprecated, and replaced by a settings task. By using the settings task, you can<br class="xooki-br"/>easily use several settings inside one Ant build script, and use a scope to tell Ivy which<br class="xooki-br"/>settings to use when calling a task which requires some settings.<br class="xooki-br"/><br class="xooki-br"/>This is still an experiment though, so feedback is very welcome in the mailing lists.<br class="xooki-br"/><br class="xooki-br"/><h4>3.4. Public resolver in default settings is now ibiblio in m2 compatible mode</h4>
 
-In previous versions Ivy used to use the ivyrep resolver as default public resolver, but ivyrep is no longer maintained, while maven 2 repository on ibiblio is growing rapidly.<br class="xooki-br"/><br class="xooki-br"/>Since Ivy is compatible with maven 2 repository, defaulting to the ibiblio maven 2 repository makes more sense.<br class="xooki-br"/><br class="xooki-br"/>If you have any issue of backward compatibility with these new settings, you can simply set the following ant property before loading the settings (implicitly or explicitly):<br class="xooki-br"/>ivy.14.compatible=true<br class="xooki-br"/><br class="xooki-br"/><h4>3.5. Relative paths resolution</h4>
+In previous versions Ivy used to use the ivyrep resolver as default public resolver, <br class="xooki-br"/>but ivyrep is no longer maintained, while maven 2 repository on ibiblio is growing rapidly.<br class="xooki-br"/><br class="xooki-br"/>Since Ivy is compatible with maven 2 repository, defaulting to the ibiblio maven 2 <br class="xooki-br"/>repository makes more sense.<br class="xooki-br"/><br class="xooki-br"/>If you have any issue of backward compatibility with these new settings, you can simply <br class="xooki-br"/>set the following ant property before loading the settings (implicitly or explicitly):<br class="xooki-br"/>ivy.14.compatible=true<br class="xooki-br"/><br class="xooki-br"/><h4>3.5. Relative paths resolution</h4>
 
-Relative paths resolution in Ivy used to be resolved against the current directory. <br class="xooki-br"/>Some work is in progress in this area, currently relative path resolution for the inclusion of configuration files in Ivy files has been modified to work relative to the Ivy file in which the configurations are included.<br class="xooki-br"/><br class="xooki-br"/>This may break your dependency resolution if you used to use relative paths for configuration file inclusion.<br class="xooki-br"/><br class="xooki-br"/><h4>3.6 Ivyrep ivyroot attribute is now mandatory</h4>
+Relative paths resolution in Ivy used to be resolved against the current directory. <br class="xooki-br"/>Some work is in progress in this area, currently relative path resolution for the inclusion<br class="xooki-br"/>of configuration files in Ivy files has been modified to work relative to the Ivy file in which<br class="xooki-br"/>the configurations are included.<br class="xooki-br"/><br class="xooki-br"/>This may break your dependency resolution if you used to use relative paths for configuration<br class="xooki-br"/>file inclusion.<br class="xooki-br"/><br class="xooki-br"/><h4>3.6 Ivyrep ivyroot attribute is now mandatory</h4>
 
 If you still use the ivyrep resolver, you will need to provide an ivyroot.<br class="xooki-br"/>To restore the previous behavior, use ivyroot="<a href="http://ivyrep.jayasoft.org/">http://ivyrep.jayasoft.org/</a>".<br class="xooki-br"/><br class="xooki-br"/>Since Ivyrep is not maintained anymore, we recommend moving away from this repository anyway.<br class="xooki-br"/><br class="xooki-br"/><h3>4. Migrating from Jayasoft Ivy to Apache Ivy</h3>
 
-Apache Ivy is fully compatible with Jayasoft Ivy as long as you do not use <br class="xooki-br"/>custom plugins.<br class="xooki-br"/>This means that you can use Apache Ivy as a drop in replacement of Jayasoft Ivy.<br class="xooki-br"/><br class="xooki-br"/>However due to the the renaming of configuration files to settings files, we<br class="xooki-br"/>strongly suggest to update your configuration files:<br class="xooki-br"/>- rename the files called ivyconf*.xml in ivysettings*.xml<br class="xooki-br"/>- rename 'ivyconf' element in 'ivysettings'<br class="xooki-br"/>- rename 'conf' element of those settings file in 'settings'<br class="xooki-br"/><br class="xooki-br"/>We also suggest using the new org.apache.ivy.ant package name for the antlib declaration.<br class="xooki-br"/><br class="xooki-br"/>Migrating custom plugins can be done by using the org.apache.ivy.Ivy14 class<br class="xooki-br"/>instead of fr.jayasoft.ivy.Ivy, and reorganizing your imports to reflect the <b
 r class="xooki-br"/>changes in the package names.<br class="xooki-br"/><br class="xooki-br"/><h3>5. How to Get Involved</h3>
+Besides what is stated in "3. Major Changes in this Release"<br class="xooki-br"/>Apache Ivy is fully compatible with Jayasoft Ivy as long as you do not use <br class="xooki-br"/>custom plugins.<br class="xooki-br"/>This means that you can use Apache Ivy as a drop in replacement of Jayasoft Ivy<br class="xooki-br"/>in most cases.<br class="xooki-br"/><br class="xooki-br"/>However due to the the renaming of configuration files to settings files, we<br class="xooki-br"/>strongly suggest to update your configuration files:<br class="xooki-br"/>- rename the files called ivyconf*.xml in ivysettings*.xml<br class="xooki-br"/>- rename 'ivyconf' element in 'ivysettings'<br class="xooki-br"/>- rename 'conf' element of those settings file in 'settings'<br class="xooki-br"/><br class="xooki-br"/>We also suggest using the new org.apache.ivy.ant package name for the antlib declaration.<br class="xooki-br"/><br class="xooki-br"/>Migrating custom plugins can be done by using the org.apache
 .ivy.Ivy14 class<br class="xooki-br"/>instead of fr.jayasoft.ivy.Ivy, and reorganizing your imports to reflect the <br class="xooki-br"/>changes in the package names.<br class="xooki-br"/><br class="xooki-br"/><h3>5. How to Get Involved</h3>
 
 The Apache Ivy project really needs and appreciates any contributions, <br class="xooki-br"/>including documentation help, source code and feedback.  If you are interested<br class="xooki-br"/>in contributing, please visit <a href="http://ant.apache.org/ivy/get-involved.html">http://ant.apache.org/ivy/get-involved.html</a>.<br class="xooki-br"/><br class="xooki-br"/><h3>6. How to Report Issues</h3>
 
 The Apache Ivy project uses JIRA for issue tracking.  Please report any <br class="xooki-br"/>issues you find at <a href="http://issues.apache.org/jira/browse/IVY">http://issues.apache.org/jira/browse/IVY</a><br class="xooki-br"/><br class="xooki-br"/><h3>7. Committers and Contributors for this Release</h3>
 
-Here is the list of people who have contributed source code and documentation<br class="xooki-br"/>to this release. Many thanks to all of them, and also to the whole Ivy community<br class="xooki-br"/>contributing ideas and feedback, and promoting the use of Ivy. The list would be too long, but Ivy couldn't be what it is without you!<br class="xooki-br"/><h4>Committers</h4>
-	Maarten Coene<br class="xooki-br"/>	Xavier Hanin<br class="xooki-br"/>	Gilles Scokart<br class="xooki-br"/><h4>Contributors</h4>
-    Jim Bonanno<br class="xooki-br"/>    Jacob Grydholt Jensen<br class="xooki-br"/>    Matthias Kilian<br class="xooki-br"/>    Nicolas Lalevée<br class="xooki-br"/>    Geoff Reedy<br class="xooki-br"/>    Jason Trump<br class="xooki-br"/>    Tjeerd Verhagen<br class="xooki-br"/>    John Williams<br class="xooki-br"/>    Jing Xue<br class="xooki-br"/><br class="xooki-br"/>Since this is our first release as a subproject of Ant, we'd also like to take this opportunity to thank the Apache Ant project for accepting Ivy as a subproject, the Apache Incubator community for their guidance to behave the "Apache way", and our mentors Antoine Levy-Lambert, Stephane Bailliez, Steve Loughran and Stefan Bodewig for their precious time and help during the incubation process.<br class="xooki-br"/>    <br class="xooki-br"/><h3>8. List of Changes in this Release</h3>
+Here is the list of people who have contributed source code and documentation<br class="xooki-br"/>to this release. Many thanks to all of them, and also to the whole Ivy community<br class="xooki-br"/>contributing ideas and feedback, and promoting the use of Ivy. The list would be too<br class="xooki-br"/>long, but Ivy couldn't be what it is without you!<br class="xooki-br"/><br class="xooki-br"/> Committers<br class="xooki-br"/>	Maarten Coene<br class="xooki-br"/>	Xavier Hanin<br class="xooki-br"/>	Gilles Scokart<br class="xooki-br"/><br class="xooki-br"/> Contributors<br class="xooki-br"/>    Andrea Bernardo Ciddio<br class="xooki-br"/>    Mikkel Bjerg<br class="xooki-br"/>    Mirko Bulovic<br class="xooki-br"/>    Benjamin Francisoud<br class="xooki-br"/>	Nicolas Lalev�e<br class="xooki-br"/>    Markus M. May<br class="xooki-br"/>    Adrian Sandor<br class="xooki-br"/>    Ruslan Shevchenko<br class="xooki-br"/>    Johan Stuyts<br class="xooki-br"/>    <br class="xook
 i-br"/><h3>8. List of Changes in this Release</h3>
 
-For a full release history of Ivy see the file CHANGES.txt<br class="xooki-br"/><br class="xooki-br"/>For details about the following changes, check our JIRA install at <br class="xooki-br"/><a href="http://issues.apache.org/jira/browse/ivy">http://issues.apache.org/jira/browse/ivy</a><br class="xooki-br"/><br class="xooki-br"/>List of changes since Ivy 2.0.0-alpha-2-incubating:<br class="xooki-br"/>- NEW: Share cache with locking (<a href="http://issues.apache.org/jira/browse/IVY-654">IVY-654</a>)<br class="xooki-br"/>- NEW: support atomic publish operation (<a href="http://issues.apache.org/jira/browse/IVY-492">IVY-492</a>) (with contribution from Geoff Reedy)<br class="xooki-br"/>- NEW: latest compatible conflict manager (<a href="http://issues.apache.org/jira/browse/IVY-648">IVY-648</a>)<br class="xooki-br"/>- NEW: Add a task/code to create M2 POM files from Ivy configurations (<a href="http://issues.apache.org/jira/browse/IVY-416">IVY-416</a>)<br class="xooki-br"/>- NEW
 : [Build] Publish the ivy sources (<a href="http://issues.apache.org/jira/browse/IVY-646">IVY-646</a>) (thanks to Nicolas Lalevée)<br class="xooki-br"/><br class="xooki-br"/>- IMPROVEMENT: Ease performance auditing (<a href="http://issues.apache.org/jira/browse/IVY-655">IVY-655</a>)<br class="xooki-br"/>- IMPROVEMENT: Maven Dependency Management is not used to determine artifact version (<a href="http://issues.apache.org/jira/browse/IVY-616">IVY-616</a>) (thanks to Jim Bonanno)<br class="xooki-br"/>- IMPROVEMENT: split the cache into an downloaded artifacts cache and a metadata cache (<a href="http://issues.apache.org/jira/browse/IVY-628">IVY-628</a>)<br class="xooki-br"/>- IMPROVEMENT: add publish triggers to event system (<a href="http://issues.apache.org/jira/browse/IVY-650">IVY-650</a>) (thanks to Jason Trump)<br class="xooki-br"/>- IMPROVEMENT: Only display unique circular dependencies during Resolve (<a href="http://issues.apache.org/jira/browse/IVY-653">IVY-653</a> <
 a href="http://issues.apache.org/jira/browse/IVY-514">IVY-514</a>) (with contribution from John Williams)<br class="xooki-br"/>- IMPROVEMENT: Adding option 'cp', which makes it possible for main to be loaded from file (<a href="http://issues.apache.org/jira/browse/IVY-543">IVY-543</a>) (thanks to Tjeerd Verhagen)<br class="xooki-br"/>- IMPROVEMENT: BasicURLHandler should use method=head for getURLInfo (<a href="http://issues.apache.org/jira/browse/IVY-611">IVY-611</a>) (thanks to Jim Bonanno)<br class="xooki-br"/>- IMPROVEMENT: artifactproperty should not overwrite the existing properties (<a href="http://issues.apache.org/jira/browse/IVY-587">IVY-587</a>)<br class="xooki-br"/>- IMPROVEMENT: Support *(private) and *(public) in the confs parameter of the resolve (<a href="http://issues.apache.org/jira/browse/IVY-588">IVY-588</a>)<br class="xooki-br"/>- IMPROVEMENT: replace * by *(public) when resolving inline (<a href="http://issues.apache.org/jira/browse/IVY-589">IVY-589</a>
 )<br class="xooki-br"/>- IMPROVEMENT: ivy html reports now refers <a href="http://ant.apache.org">http://ant.apache.org</a> (partial <a href="http://issues.apache.org/jira/browse/IVY-414">IVY-414</a>)<br class="xooki-br"/>- IMPROVEMENT: Improvements on hello ivy example (<a href="http://issues.apache.org/jira/browse/IVY-626">IVY-626</a>) (with contribution from Jacob Grydholt Jensen)<br class="xooki-br"/>- IMPROVEMENT: Make the root attribute in the ivyrep resolver mandatory (<a href="http://issues.apache.org/jira/browse/IVY-625">IVY-625</a>)<br class="xooki-br"/>- IMPROVEMENT: New text representation for main module metadata concepts (<a href="http://issues.apache.org/jira/browse/IVY-649">IVY-649</a>)<br class="xooki-br"/><br class="xooki-br"/>- FIX: m2 incompatibility - IVY does not recognize property section (<a href="http://issues.apache.org/jira/browse/IVY-637">IVY-637</a>)<br class="xooki-br"/>- FIX: m2 incompatibility - IVY does not recognize parent pom (<a href="http
 ://issues.apache.org/jira/browse/IVY-636">IVY-636</a>)<br class="xooki-br"/>- FIX: Attempt to download a file with & in its name causes SAXParseException in Ivy (<a href="http://issues.apache.org/jira/browse/IVY-635">IVY-635</a>)<br class="xooki-br"/>- FIX: Bad IvyContext scope causing memory leak and bad handling of subproject builds (<a href="http://issues.apache.org/jira/browse/IVY-639">IVY-639</a>)<br class="xooki-br"/>- FIX: Resolution failure when no ivy.xml file present (<a href="http://issues.apache.org/jira/browse/IVY-630">IVY-630</a>)<br class="xooki-br"/>- FIX: ${parent.version} property is not recognized in maven2 pom (<a href="http://issues.apache.org/jira/browse/IVY-620">IVY-620</a>)<br class="xooki-br"/>- FIX: Handle relocation tag in maven 2 pom (<a href="http://issues.apache.org/jira/browse/IVY-586">IVY-586</a>)<br class="xooki-br"/>- FIX: Ivy doesn't work with Ant 1.6.2 (<a href="http://issues.apache.org/jira/browse/IVY-614">IVY-614</a>)<br class="xooki-br"
 />- FIX: EmptyStackException when upgrading from 1.4 to 2.0 (<a href="http://issues.apache.org/jira/browse/IVY-610">IVY-610</a>)<br class="xooki-br"/>- FIX: Ivy:retrieve fails through proxy server (<a href="http://issues.apache.org/jira/browse/IVY-529">IVY-529</a>)<br class="xooki-br"/>- FIX: java.lang.IllegalArgumentException: Invalid uri when working with version ranges (<a href="http://issues.apache.org/jira/browse/IVY-390">IVY-390</a>)<br class="xooki-br"/>- FIX: Ivy settings include -tag url attribute does not work correctly (<a href="http://issues.apache.org/jira/browse/IVY-601">IVY-601</a>)<br class="xooki-br"/>- FIX: Static revision replacement is not working when a dynamic revision is evicted by a transitive dependency (<a href="http://issues.apache.org/jira/browse/IVY-603">IVY-603</a>) (with contribution from Matthias Kilian)<br class="xooki-br"/>- FIX: NullPointerException whilst resolving transitive dependencies (<a href="http://issues.apache.org/jira/browse/IVY-
 590">IVY-590</a>)<br class="xooki-br"/>- FIX: cachepath based on a resolve done in a previous build broken (<a href="http://issues.apache.org/jira/browse/IVY-583">IVY-583</a>)<br class="xooki-br"/>- FIX: Resolving dynamic version fails when using multiple patterns if only one pattern find a revision and others don't (<a href="http://issues.apache.org/jira/browse/IVY-602">IVY-602</a>)<br class="xooki-br"/>- FIX: Invalid character in IvyRetrieveTest causing most tests to fail (<a href="http://issues.apache.org/jira/browse/IVY-604">IVY-604</a>)<br class="xooki-br"/>- FIX: ivy:settings and ivy:retrieve with explicit id causes unwarranted DEPRECATED warning (thanks to Jacob Grydholt Jensen)<br class="xooki-br"/><br class="xooki-br"/>- REFACTORING: Extract a settings interface for the different engines<br class="xooki-br"/><br class="xooki-br"/>- TASK: Review all tutorials to make sure they are in sync with 2.0 (<a href="http://issues.apache.org/jira/browse/IVY-591">IVY-591</a>) (
 with contribution from Jing Xue)<br class="xooki-br"/>- TASK: Satisfy the US export control laws for software "specially designed" to use cryptography. (<a href="http://issues.apache.org/jira/browse/IVY-593">IVY-593</a>)<br class="xooki-br"/>	<hr/><div class='toc-title toc-title-2'>Tutorials</div><br class="xooki-br"/>The best way to learn is to practice! That's what the ivy tutorials will help you to do, to discover some of the great ivy <a href="../../features.html">features</a>.<br class="xooki-br"/><br class="xooki-br"/>Here is the very first tutorial, it doesn't even require to install Ivy, and should not take more than 30 seconds if you already have ant and a jdk properly installed:
+For a full release history of Ivy see the file CHANGES.txt<br class="xooki-br"/><br class="xooki-br"/>For details about the following changes, check our JIRA install at <br class="xooki-br"/><a href="http://issues.apache.org/jira/browse/ivy">http://issues.apache.org/jira/browse/ivy</a><br class="xooki-br"/><br class="xooki-br"/>List of changes since Ivy 2.0.0-beta1:<br class="xooki-br"/>- NEW: Introduce RepositoryManagementEngine (<a href="http://issues.apache.org/jira/browse/IVY-665">IVY-665</a>)<br class="xooki-br"/>- NEW: Add support for importing environment variables (<a href="http://issues.apache.org/jira/browse/IVY-608">IVY-608</a>)<br class="xooki-br"/>- NEW: Add ability for buildlist task to start build from specified module in the list (<a href="http://issues.apache.org/jira/browse/IVY-697">IVY-697</a>) (thanks to Mirko Bulovic)<br class="xooki-br"/>- NEW: Cache dynamic revision resolution (<a href="http://issues.apache.org/jira/browse/IVY-694">IVY-694</a>)<br clas
 s="xooki-br"/>- NEW: Make resolve console output configurable per resolve (<a href="http://issues.apache.org/jira/browse/IVY-715">IVY-715</a>)<br class="xooki-br"/><br class="xooki-br"/>- IMPROVEMENT: branch and extra attributes missing from info Ant task (<a href="http://issues.apache.org/jira/browse/IVY-721">IVY-721</a>)<br class="xooki-br"/>- IMPROVEMENT: Review settings loading in Ant (<a href="http://issues.apache.org/jira/browse/IVY-703">IVY-703</a>)<br class="xooki-br"/>- IMPROVEMENT: Move useOrigin to repository cache manager (<a href="http://issues.apache.org/jira/browse/IVY-700">IVY-700</a>)<br class="xooki-br"/>- IMPROVEMENT: Make IBiblio resolver compatible with maven proxy (<a href="http://issues.apache.org/jira/browse/IVY-466">IVY-466</a>)<br class="xooki-br"/>- IMPROVEMENT: Use namespace aware validation (<a href="http://issues.apache.org/jira/browse/IVY-553">IVY-553</a>)<br class="xooki-br"/>- IMPROVEMENT: use ModuleRevisionId instead of ModuleId in IvySettin
 gs#getResolver (<a href="http://issues.apache.org/jira/browse/IVY-691">IVY-691</a>)<br class="xooki-br"/>- IMPROVEMENT: Flexible cache management (<a href="http://issues.apache.org/jira/browse/IVY-399">IVY-399</a>) (With contribution of Adrian Sandor)<br class="xooki-br"/>- IMPROVEMENT: Decrease memory footprint (<a href="http://issues.apache.org/jira/browse/IVY-662">IVY-662</a>)<br class="xooki-br"/>- IMPROVEMENT: Downgrade Ant version requirement to 1.6 to build Ivy (<a href="http://issues.apache.org/jira/browse/IVY-687">IVY-687</a>)<br class="xooki-br"/>- IMPROVEMENT: In the ResolveReport class, add the possibility to filter the evicted module while getting the list of DownloadArtifact (<a href="http://issues.apache.org/jira/browse/IVY-704">IVY-704</a>) (thanks to Nicolas Lalev�e)<br class="xooki-br"/>- IMPROVEMENT: Refactor the PomModuleDescriptorParser in order to allow easier integration of maven pom 	 <br class="xooki-br"/><br class="xooki-br"/>- FIX: ivy:install
  task not using validate attribute (<a href="http://issues.apache.org/jira/browse/IVY-728">IVY-728</a>)<br class="xooki-br"/>- FIX: Bad conflict resolution leads to bad "configuration(s) not found" error (<a href="http://issues.apache.org/jira/browse/IVY-729">IVY-729</a>)<br class="xooki-br"/>- FIX: Resolving for muyltiple configurations when one is not in the list of available configurations does not abort the build (<a href="http://issues.apache.org/jira/browse/IVY-720">IVY-720</a>)<br class="xooki-br"/>- FIX: Branch attribute considered as both a standard and extra attribute on module info (<a href="http://issues.apache.org/jira/browse/IVY-726">IVY-726</a>)<br class="xooki-br"/>- FIX: Branch attribute not set on deliver when using a non default branch (<a href="http://issues.apache.org/jira/browse/IVY-724">IVY-724</a>)<br class="xooki-br"/>- FIX: NullPointerException reported instead of error in ivy:cachepath (<a href="http://issues.apache.org/jira/browse/IVY-690">IVY-690
 </a>)<br class="xooki-br"/>- FIX: NPE when calling retrieve if some artifacts are not available locally (<a href="http://issues.apache.org/jira/browse/IVY-712">IVY-712</a>)<br class="xooki-br"/>- FIX: When in ssh plugin we does not set username in scheme, Ivy always try to connect with guest username, even if we change one in panel. (<a href="http://issues.apache.org/jira/browse/IVY-710">IVY-710</a>) (thanks to Ruslan Shevchenko)<br class="xooki-br"/>- FIX: NPE in SshCache during publish with ssh resolver without passFile (<a href="http://issues.apache.org/jira/browse/IVY-709">IVY-709</a>) (thanks to Ruslan Shevchenko)<br class="xooki-br"/>- FIX: Update install ivy build file example (<a href="http://issues.apache.org/jira/browse/IVY-705">IVY-705</a>) (thanks to Benjamin Francisoud)<br class="xooki-br"/>- FIX: Ivy swallows ParseException when using a latest strategy requiring module descriptors (<a href="http://issues.apache.org/jira/browse/IVY-702">IVY-702</a>) (thanks to N
 icolas Lalev�e)<br class="xooki-br"/>- FIX: Problem with cached Ivy files which have extra attributes (<a href="http://issues.apache.org/jira/browse/IVY-693">IVY-693</a>)<br class="xooki-br"/>- FIX: Detection of newer and better artifacts should not happen if 'checkModified' is set to 'false' (<a href="http://issues.apache.org/jira/browse/IVY-389">IVY-389</a>) (with contribution from Johan Stuyts)<br class="xooki-br"/>- FIX: Ivy doesn't respect the order of the ivy patterns as defined in the settings (<a href="http://issues.apache.org/jira/browse/IVY-676">IVY-676</a>)<br class="xooki-br"/>- FIX: XmlModuleDescriptorWriter doesn't write the deprecated attribute of the "ivy-module/configurations/conf" element (<a href="http://issues.apache.org/jira/browse/IVY-664">IVY-664</a>)<br class="xooki-br"/>- FIX: XMLModuleDescriptorWriter does not write extra attributes (<a href="http://issues.apache.org/jira/browse/IVY-471">IVY-471</a>) (with contribution from Mikkel Bjerg)<br cla
 ss="xooki-br"/>- FIX: latest compatible conflict manager fails with circular dependencies and dynamic revision (<a href="http://issues.apache.org/jira/browse/IVY-663">IVY-663</a>)<br class="xooki-br"/>- FIX: Strict conflictmanager seems to not support dynamic revisions (<a href="http://issues.apache.org/jira/browse/IVY-474">IVY-474</a>)<br class="xooki-br"/>- FIX: NPE in namespace transformation during the ivy:findrevision and ivy:resolve task execution (<a href="http://issues.apache.org/jira/browse/IVY-659">IVY-659</a>) (thanks to Andrea Bernardo Ciddio)<br class="xooki-br"/>- FIX: Maven test scope includes all runtime dependencies (<a href="http://issues.apache.org/jira/browse/IVY-682">IVY-682</a>)<br class="xooki-br"/>- FIX: Inherit depedencies defined in parent pom (<a href="http://issues.apache.org/jira/browse/IVY-683">IVY-683</a>)<br class="xooki-br"/>- FIX: Incorrect ivy from maven pom generation when classifier are user (<a href="http://issues.apache.org/jira/browse/
 IVY-714">IVY-714</a>) (thanks to Ruslan Shevchenko)<br class="xooki-br"/>- FIX: m2 incompatibility - IVY does not recognize property section(<a href="http://issues.apache.org/jira/browse/IVY-637">IVY-637</a>)<br class="xooki-br"/><br class="xooki-br"/>- TASK: Remove cache attribute on Ant tasks (<a href="http://issues.apache.org/jira/browse/IVY-685">IVY-685</a>)<br class="xooki-br"/><br class="xooki-br"/>- Improvement in coding conventions (<a href="http://issues.apache.org/jira/browse/IVY-511">IVY-511</a>) (with contribution from Markus M. May)<br class="xooki-br"/><hr/><div class='toc-title toc-title-2'>Tutorials</div><br class="xooki-br"/>The best way to learn is to practice! That's what the ivy tutorials will help you to do, to discover some of the great ivy <a href="../../features.html">features</a>.<br class="xooki-br"/><br class="xooki-br"/>Here is the very first tutorial, it doesn't even require to install Ivy, and should not take more than 30 seconds if you already 
 have ant and a jdk properly installed:
 <ul>
 <li>make sure you have <a href="http://ant.apache.org/">ant</a> 1.6.0 or greater and a <a href="http://java.sun.com">jdk</a> properly installed</li>
 <li>copy <a href="samples/build.xml">this build file</a> in an empty directory on your local filesystem (and make sure you name it build.xml)</li>
@@ -1513,20 +1512,21 @@
 </ul>
 Note also that with any matcher the character '*' has the special meaning of matching anything. This is particularly useful with default values which do not depend on the matcher.<br class="xooki-br"/><br class="xooki-br"/><h1><a name="extra">Extra attributes</a></h1>
 <span class="since">since 1.4</span>
-Several tags in ivy xml files are extensible with what is called extra attributes. <br class="xooki-br"/>The idea is very simple: if you need some more information to define your modules, you can add the attribute you want and you will then be able to access it as any other attribute in your patterns for example.<br class="xooki-br"/><br class="xooki-br"/>Example:<br class="xooki-br"/>Here is an ivy file with the attribute 'color' set to blue:
+Several tags in ivy xml files are extensible with what is called extra attributes. <br class="xooki-br"/>The idea is very simple: if you need some more information to define your modules, you can add the attribute you want and you will then be able to access it as any other attribute in your patterns for example.<br class="xooki-br"/><br class="xooki-br"/><span class="since">since 2.0</span>
+It's possible and recommended to use xml namespaces for your extra attributes. Using an Ivy extra namespace is the easiest way to add your own extra attributes.<br class="xooki-br"/><br class="xooki-br"/>Example:<br class="xooki-br"/>Here is an ivy file with the attribute 'color' set to blue:
 <pre>
-&lt;ivy-module version="1.4"&gt;<br class="xooki-br"/>	&lt;info organisation="apache"<br class="xooki-br"/>	       module="foo"<br class="xooki-br"/>	       color="blue"<br class="xooki-br"/>	       status="integration"<br class="xooki-br"/>	       revision="1.59"<br class="xooki-br"/>	/&gt;<br class="xooki-br"/>&lt;/ivy-module&gt;
+&lt;ivy-module version="2.0" xmlns:e="<a href="http://ant.apache.org/ivy/extra">http://ant.apache.org/ivy/extra</a>"&gt;<br class="xooki-br"/>	&lt;info organisation="apache"<br class="xooki-br"/>	       module="foo"<br class="xooki-br"/>	       e:color="blue"<br class="xooki-br"/>	       status="integration"<br class="xooki-br"/>	       revision="1.59"<br class="xooki-br"/>	/&gt;<br class="xooki-br"/>&lt;/ivy-module&gt;
 </pre>
-Then you can use the extra attribute when you declare a dependency on foo:
+Then you must use the extra attribute when you declare a dependency on foo.  Those extra attributes <br class="xooki-br"/>will indeed be used as identifier for the module like the org the name and the revision:
 <pre>
-&lt;dependency org="apache" name="foo" color="blue" rev="1.5+" /&gt;
+&lt;dependency org="apache" name="foo" e:color="blue" rev="1.5+" /&gt;
 </pre>
 And you can define your repository pattern as:
 <pre>
 ${repository.dir}/[organisation]/[module]/[color]/[revision]/[artifact].[ext]
 </pre>
 
-Note that in order to use extra attributes, you will need to disable ivy file validation, since your files won't fulffill anymore the official ivy xsd. See the <a href="configuration/conf.html">configuration doc page</a> to see how to disable validation.<br class="xooki-br"/><h1><a name="checksum">Checksums</a></h1>
+Note that in patterns you must use the unqualified attribute name (no namespace prefix).<br class="xooki-br"/><br class="xooki-br"/>If you don't want to use xml namespaces, it's possible but you will need to disable ivy file validation, since your files won't fulffill anymore the official ivy xsd. See the <a href="configuration/conf.html">settings documentation</a> to see how to disable validation.<br class="xooki-br"/><h1><a name="checksum">Checksums</a></h1>
 <span class="since">since 1.4</span>
 Ivy allow to use checksums, also known as digester, to verify the correctness of a downloaded file.<br class="xooki-br"/><br class="xooki-br"/>For the moment Ivy supports md5 and sha1 algorithm.<br class="xooki-br"/><br class="xooki-br"/>The configuration of using md5 and/or sha1 can be done globally or by dependency resolver.<br class="xooki-br"/>Globally, use the ivy.checksums variable to list the check to be done (only md5 and sha1 are supported).<br class="xooki-br"/>On each resolver you can use the checksums attribute to override the global setting.<br class="xooki-br"/><br class="xooki-br"/>The setting is a comma separated list of checksum algorithm to use.<br class="xooki-br"/>During checking (at download time), the first checksum found is checked, and that's all. This means that if you have a "sha1, md5" setting, then if ivy finds a sha1 file, it will compare the downloaded file sha1 against this sha1, and if the comparison is ok, it will assume the file is ok. If no
  sha1 file is found, it will look for a md5 file. If none is found no checking is done.<br class="xooki-br"/>During publish, all listed checksum algorithms are computed and uploaded.<br class="xooki-br"/><br class="xooki-br"/>By default checksum algorithms are "sha1, md5".<br class="xooki-br"/><br class="xooki-br"/>If you want to change this default, you can set the variable ivy.checksums. Hence to disable checksum validation you just have to set ivy.checksums to "".<br class="xooki-br"/><br class="xooki-br"/><h1><a name="event">Events and Triggers</a></h1>
 <span class="since">since 1.4</span>
@@ -1539,8 +1539,18 @@
 <li>error</li> halt the dependency resolution when a circular dependency is found. 
 </ul>
 
-See the <a href="configuration/conf.html">configuration page</a> to see how to configure the circular dependency strategy you want to use.<br class="xooki-br"/><br class="xooki-br"/><h1><a name="change">Cache and Change Management</a></h1>
-Ivy heavily relies on a local cache to avoid accessing remote repositories too often, thus saving a low of network bandwidth and time. To optimize the dependency resolution and the way the cache is used, Ivy assumes by default that a revision never changes. So once Ivy has a module in its cache (metadata and artifacts), it trusts the cache and do not even query the repository. This optimization is very useful in most cases, and causes no problem as long as you respect this paradigm: a revision never changes. Besides performance, there are several <a href="../../history/latest-milestone/bestpractices.html">good reasons</a> to follow this principle.	<br class="xooki-br"/><br class="xooki-br"/>However, depending on your current build system and your dependency management strategy, you may prefer to update sometimes your modules. There are two kind of changes to consider:<br class="xooki-br"/><h3>change in module metadata</h3>
+See the <a href="configuration/conf.html">configuration page</a> to see how to configure the circular dependency strategy you want to use.<br class="xooki-br"/><br class="xooki-br"/><h1>Cache and Change Management</h1>
+Ivy heavily relies on local cache(s) to avoid accessing remote repositories too often, thus saving a low of network bandwidth and time. <br class="xooki-br"/><br class="xooki-br"/><h2><a name="cache">Cache types</a></h2>
+Ivy cache is composed of two different parts:
+<ul>
+<li>the repository cache</li>
+The repository cache is where Ivy stores data downloaded from module repositories, along with some meta information concerning these artifacts, like their original location.<br class="xooki-br"/>This part of the cache can be shared if you use a well suited <a href="../../history/latest-milestone/configuration/lock-strategies.html">lock strategy</a>. 
+<li>the resolution cache</li>
+This part of the cache is used to store resolution data, which is used by Ivy to reuse the results of a resolve process.<br class="xooki-br"/>This part of the cache is overwritten each time a new resolve is performed, and should never be used by multiple processes at the same time.
+</ul>
+
+While there is always only one resolution cache, you can <a href="../../history/latest-milestone/configuration/caches.html">define multiple repository caches</a>, each <a href="../../history/latest-milestone/configuration/resolvers.html">resolver</a> being able to use a separate cache.<br class="xooki-br"/><br class="xooki-br"/><h2><a name="change">Change management</a></h2>
+To optimize the dependency resolution and the way the cache is used, Ivy assumes by default that a revision never changes. So once Ivy has a module in its cache (metadata and artifacts), it trusts the cache and do not even query the repository. This optimization is very useful in most cases, and causes no problem as long as you respect this paradigm: a revision never changes. Besides performance, there are several <a href="../../history/latest-milestone/bestpractices.html">good reasons</a> to follow this principle.	<br class="xooki-br"/><br class="xooki-br"/>However, depending on your current build system and your dependency management strategy, you may prefer to update sometimes your modules. There are two kind of changes to consider:<br class="xooki-br"/><h3>Changes in module metadata</h3>
 Since pretty often module metadata are not considered by module providers with as much attention as their API or behavior (if they even provide module metadata), it happens more than we would like that we have to update module metadata: a dependency has been forgotten, or another one is missing, ...<br class="xooki-br"/><br class="xooki-br"/>In this case, setting checkModified="true" on your dependency resolver will be the solution. This flag tells to Ivy to check if module metadata has been modified compared to the cache. Ivy first checks the metadata last modified timestamp on the repository to download it only if necessary, and then update it when needed.<br class="xooki-br"/><h3>Changes in artifacts</h3>
 Some people, especially those coming from maven 2 land, like to use one special revision to handle often updated modules. In maven 2 this is called a SNAPSHOT version, and some argue that it helps saves disk space to keep only one version for the high number of intermediary builds you can make whilst developing.<br class="xooki-br"/><br class="xooki-br"/>Ivy supports this kind of approach with the notion of changing revision. A changing revision is just that: a revision for which Ivy should consider that the artifacts may change over time. To handle this, you can either specify a dependency as changing on the <a href="../../history/latest-milestone/ivyfile/dependency.html">dependency</a> tag, or use the changingPattern and changingMatcher attributes on your <a href="../../history/latest-milestone/configuration/resolvers.html">resolvers</a> to indicate which revision or group of revisions should be considered as changing.<br class="xooki-br"/><br class="xooki-br"/>Once Ivy kn
 ows that a revision is changing, it will follow this principle to avoid checking your repository too often: if the module metadata has not changed, it will considered the whole module (including artifacts) as not changed. Even if the module descriptor file has changed, it will check the publication data of the module to see if this is a new publication of the same revision or not. Then if the publication date has changed, it will check the artifacts last modified timestamps, and download them accordingly.<br class="xooki-br"/><br class="xooki-br"/>So if you want to use changing revisions, use the <a href="use/publish.html">publish</a> task to publish your modules, it will take care of updating the publication date, and everything will work fine. And remember to set checkModified=true" on your resolver too!<hr/><div class='toc-title toc-title-4'>Text Conventions</div><br class="xooki-br"/>Very often some concepts discussed in Ivy here, and especially those involving modules a
 nd dependencies, require to be discussed by text (e-mail, textual doc, console, ...), and so benefit from convention in this area.<br class="xooki-br"/><br class="xooki-br"/>The conventions have been adopted with Ivy 2.0 are the following:
 <table>
@@ -1658,19 +1668,15 @@
 </pre>
 - replace ivy:xxx tasks by ivy-xxx<br class="xooki-br"/>You can now run the build, if it is successful, you have successfully installed Ivy !<br class="xooki-br"/><br class="xooki-br"/>If the build is not successful, check the <a href="../../faq.html">FAQ</a> to see what can be the problem with the ivyrep resolver.<br class="xooki-br"/><br class="xooki-br"/><h2>Ivy dependendencies</h2>
 
-The latest binary version of Ivy, 2.0.0-alpha-1, doesn't include the optional dependencies. To download them using Ivy, all you need is to have Ant installed and follow these instructions:<br class="xooki-br"/>1. open a shell or command line in the directory where you unzipped your binary distribution, where you can find the ivy-2.0.0-alpha-1-incubating.jar<br class="xooki-br"/>2. copy <a href="samples/build-install.xml">this build</a> script to the directory<br class="xooki-br"/>3. run the following command:
-<pre>
-ant -f build-install.xml
-</pre>
-4. That's all, you should now see the Ivy optional dependencies in the lib directory, organized per configuration (see the ivy.xml for details about the configurations and their use)<br class="xooki-br"/><br class="xooki-br"/><h1>Automatically</h1>
+One of the two binary versions of Ivy doesn't include the optional dependencies. To download them using Ivy, all you need is to run the Ant build file provided in the distribution. This will use Ivy itself to download the dependencies. Then you should see the Ivy optional dependencies in the lib directory, organized per configuration (see the ivy.xml for details about the configurations and their use).<br class="xooki-br"/><br class="xooki-br"/><h1>Automatically</h1>
 If you want to use Ivy only in your ant build scripts, and have an internet connection when you build, you can download Ivy from this site and use the downloaded version automatically, using this simple build snippet:
 <pre>
-    &lt;property name="ivy.install.version" value="1.4-RC1" /&gt;<br class="xooki-br"/><br class="xooki-br"/>    &lt;condition property="ivy.home" value="${env.IVY_HOME}"&gt;<br class="xooki-br"/>        &lt;isset property="env.IVY_HOME" /&gt;<br class="xooki-br"/>    &lt;/condition&gt;<br class="xooki-br"/>    &lt;property name="ivy.home" value="${user.home}/.ivy" /&gt;<br class="xooki-br"/>    &lt;property name="ivy.jar.dir" value="${ivy.home}/jars" /&gt;<br class="xooki-br"/>    &lt;property name="ivy.jar.file" value="${ivy.jar.dir}/ivy.jar" /&gt;<br class="xooki-br"/>	<br class="xooki-br"/>    &lt;target name="download-ivy" unless="offline"&gt;<br class="xooki-br"/>        &lt;mkdir dir="${ivy.jar.dir}"/&gt;<br class="xooki-br"/>        &lt;!-- download Ivy from web site so that it can be used even without any special installation --&gt;<br class="xooki-br"/>        &lt;get src="http://www.jayasoft.org/downloads/ivy/${ivy.install.version}/ivy-${ivy.install.version}.jar"<
 br class="xooki-br"/>            dest="${ivy.jar.file}" usetimestamp="true"/&gt;<br class="xooki-br"/>    &lt;/target&gt;<br class="xooki-br"/>	<br class="xooki-br"/>    &lt;target name="init-ivy" depends="download-ivy"&gt;<br class="xooki-br"/>    	&lt;!-- try to load ivy here from ivy home, in case the user has not already dropped<br class="xooki-br"/>              it into ant's lib dir (note that the latter copy will always take precedence).<br class="xooki-br"/>              We will not fail as long as local lib dir exists (it may be empty) and<br class="xooki-br"/>              ivy is in at least one of ant's lib dir or the local lib dir. --&gt;<br class="xooki-br"/>        &lt;path id="ivy.lib.path"&gt;<br class="xooki-br"/>            &lt;fileset dir="${ivy.jar.dir}" includes="*.jar"/&gt;<br class="xooki-br"/>        &lt;/path&gt;<br class="xooki-br"/>        &lt;taskdef resource="org/apache/ivy/ant/antlib.xml"<br class="xooki-br"/>                 uri="antlib:org.apa
 che.ivy.ant" classpathref="ivy.lib.path"/&gt;<br class="xooki-br"/>    &lt;/target&gt;
+    &lt;property name="ivy.install.version" value="2.0.0-beta1" /&gt;<br class="xooki-br"/>    &lt;condition property="ivy.home" value="${env.IVY_HOME}"&gt;<br class="xooki-br"/>      &lt;isset property="env.IVY_HOME" /&gt;<br class="xooki-br"/>    &lt;/condition&gt;<br class="xooki-br"/>    &lt;property name="ivy.home" value="${user.home}/.ant" /&gt;<br class="xooki-br"/>    &lt;property name="ivy.jar.dir" value="${ivy.home}/lib" /&gt;<br class="xooki-br"/>    &lt;property name="ivy.jar.file" value="${ivy.jar.dir}/ivy.jar" /&gt;<br class="xooki-br"/><br class="xooki-br"/>    &lt;target name="download-ivy" unless="offline"&gt;<br class="xooki-br"/><br class="xooki-br"/>        &lt;mkdir dir="${ivy.jar.dir}"/&gt;<br class="xooki-br"/>        &lt;!-- download Ivy from web site so that it can be used even without any special installation --&gt;<br class="xooki-br"/>        &lt;get src="http://www.apache.org/dist/ant/ivy/${ivy.install.version}/ivy.jar"<br class="xooki-br"/>     
        dest="${ivy.jar.file}" usetimestamp="true"/&gt;<br class="xooki-br"/>    &lt;/target&gt;<br class="xooki-br"/><br class="xooki-br"/>    &lt;target name="init-ivy" depends="download-ivy"&gt;<br class="xooki-br"/>      &lt;!-- try to load ivy here from ivy home, in case the user has not already dropped<br class="xooki-br"/>              it into ant's lib dir (note that the latter copy will always take precedence).<br class="xooki-br"/>              We will not fail as long as local lib dir exists (it may be empty) and<br class="xooki-br"/>              ivy is in at least one of ant's lib dir or the local lib dir. --&gt;<br class="xooki-br"/>        &lt;path id="ivy.lib.path"&gt;<br class="xooki-br"/>            &lt;fileset dir="${ivy.jar.dir}" includes="*.jar"/&gt;<br class="xooki-br"/><br class="xooki-br"/>        &lt;/path&gt;<br class="xooki-br"/>        &lt;taskdef resource="org/apache/ivy/ant/antlib.xml"<br class="xooki-br"/>                 uri="antlib:org.apache.
 ivy.ant" classpathref="ivy.lib.path"/&gt;<br class="xooki-br"/>    &lt;/target&gt;
 </pre>
 
 Then the only thing to do is to add the init-ivy target in the depends attribute of your targets using Ivy, and add ivy namespace to your build script. See the self contained <a href="https://svn.apache.org/repos/asf/ant/ivy/core/trunk/src/example/go-ivy/build.xml">go-ivy</a> example for details about this.<br class="xooki-br"/>	<hr/><div class='toc-title toc-title-3'>Settings Files</div><br class="xooki-br"/>In order to work as you want, ivy sometimes need some settings. Actually, ivy can work with no specific settings at all, see the <a href="tutorial/defaultconf.html">default settings documentation</a> for details about that. But ivy is able to work in very different contexts. You just have to configure it properly.<br class="xooki-br"/><br class="xooki-br"/>Settings are specified through an xml file, usually called ivysettings.xml. To configure ivy from ant, you just have to use the <a href="use/settings.html">settings</a> datatype with the path of your settings file.<br
  class="xooki-br"/><br class="xooki-br"/>Here is an example of settings file :
 <pre>
-&lt;ivysettings&gt;<br class="xooki-br"/>        &lt;properties file="${ivy.settings.dir}/ivysettings-file.properties" /&gt;<br class="xooki-br"/>        &lt;settings defaultResolver="ibiblio" checkUpToDate="false" /&gt;<br class="xooki-br"/>        &lt;cache basedir="${cache.dir}" /&gt;<br class="xooki-br"/>        &lt;resolvers&gt;<br class="xooki-br"/>                &lt;ibiblio name="ibiblio" /&gt;<br class="xooki-br"/>                &lt;filesystem name="internal"&gt;<br class="xooki-br"/>                        &lt;ivy pattern="${repository.dir}/[module]/ivy-[revision].xml" /&gt;<br class="xooki-br"/>                        &lt;artifact pattern="${repository.dir}/[module]/[artifact]-[revision].[ext]" /&gt;<br class="xooki-br"/>                &lt;/filesystem&gt;<br class="xooki-br"/>        &lt;/resolvers&gt;<br class="xooki-br"/>        &lt;modules&gt;<br class="xooki-br"/>                &lt;module organisation="jayasoft" name=".*" resolver="internal" /&gt;<br class=
 "xooki-br"/>        &lt;/modules&gt;<br class="xooki-br"/>&lt;/ivysettings&gt;
+&lt;ivysettings&gt;<br class="xooki-br"/>        &lt;properties file="${ivy.settings.dir}/ivysettings-file.properties" /&gt;<br class="xooki-br"/>        &lt;settings defaultCache="${cache.dir}" defaultResolver="ibiblio" checkUpToDate="false" /&gt;<br class="xooki-br"/>        &lt;resolvers&gt;<br class="xooki-br"/>                &lt;ibiblio name="ibiblio" /&gt;<br class="xooki-br"/>                &lt;filesystem name="internal"&gt;<br class="xooki-br"/>                        &lt;ivy pattern="${repository.dir}/[module]/ivy-[revision].xml" /&gt;<br class="xooki-br"/>                        &lt;artifact pattern="${repository.dir}/[module]/[artifact]-[revision].[ext]" /&gt;<br class="xooki-br"/>                &lt;/filesystem&gt;<br class="xooki-br"/>        &lt;/resolvers&gt;<br class="xooki-br"/>        &lt;modules&gt;<br class="xooki-br"/>                &lt;module organisation="jayasoft" name=".*" resolver="internal" /&gt;<br class="xooki-br"/>        &lt;/modules&gt;<br 
 class="xooki-br"/>&lt;/ivysettings&gt;
 </pre>
 
 <br/>
@@ -1685,7 +1691,7 @@
 
 The settings file is structured in some parts and left other open. Indeed each resolver has its own structure, thus it's not the settings file itself which define the structure for the resolvers.<br class="xooki-br"/>
 <pre>
-ivysettings<br class="xooki-br"/>    <a href="configuration/property.html">property</a><br class="xooki-br"/>    <a href="configuration/properties.html">properties</a><br class="xooki-br"/>    <a href="configuration/conf.html">settings</a><br class="xooki-br"/>    <a href="configuration/include.html">include</a><br class="xooki-br"/>    <a href="configuration/classpath.html">classpath</a><br class="xooki-br"/>    <a href="configuration/typedef.html">typedef</a><br class="xooki-br"/>    <a href="configuration/lock-strategies.html">lock-strategies</a><br class="xooki-br"/>    <a href="configuration/cache.html">cache</a><br class="xooki-br"/>    <a href="configuration/latest-strategies.html">latest-strategies</a><br class="xooki-br"/>    <a href="configuration/version-matchers.html">version-matchers</a><br class="xooki-br"/>    <a href="configuration/triggers.html">triggers</a><br class="xooki-br"/>    <a href="configuration/parsers.html">parsers</a><br class="xooki-br"/>    <a
  href="configuration/conflict-managers.html">conflict-managers</a><br class="xooki-br"/>    <a href="configuration/outputters.html">outputters</a><br class="xooki-br"/>    <a href="configuration/namespaces.html">namespaces</a><br class="xooki-br"/>        <a href="configuration/namespace.html">namespace</a><br class="xooki-br"/>            <a href="configuration/namespace/rule.html">rule</a><br class="xooki-br"/>                <a href="configuration/namespace/fromtosystem.html">fromsystem</a><br class="xooki-br"/>                    <a href="configuration/namespace/src.html">src</a><br class="xooki-br"/>                    <a href="configuration/namespace/dest.html">dest</a><br class="xooki-br"/>                <a href="configuration/namespace/fromtosystem.html">tosystem</a><br class="xooki-br"/>                    <a href="configuration/namespace/src.html">src</a><br class="xooki-br"/>                    <a href="configuration/namespace/dest.html">dest</a><br class="xooki-
 br"/>    <a href="configuration/macrodef.html">macrodef</a><br class="xooki-br"/>        <a href="configuration/macrodef/attribute.html">attribute</a><br class="xooki-br"/>        any resolver<br class="xooki-br"/>    <a href="configuration/resolvers.html">resolvers</a><br class="xooki-br"/>        any resolver<br class="xooki-br"/>    <a href="configuration/modules.html">modules</a><br class="xooki-br"/>        <a href="configuration/module.html">module</a><br class="xooki-br"/>    <a href="configuration/statuses.html">statuses</a><br class="xooki-br"/>        <a href="configuration/status.html">status</a>
+ivysettings<br class="xooki-br"/>    <a href="configuration/property.html">property</a><br class="xooki-br"/>    <a href="configuration/properties.html">properties</a><br class="xooki-br"/>    <a href="configuration/conf.html">settings</a><br class="xooki-br"/>    <a href="configuration/include.html">include</a><br class="xooki-br"/>    <a href="configuration/classpath.html">classpath</a><br class="xooki-br"/>    <a href="configuration/typedef.html">typedef</a><br class="xooki-br"/>    <a href="configuration/lock-strategies.html">lock-strategies</a><br class="xooki-br"/>    <a href="configuration/caches.html">caches</a><br class="xooki-br"/>        <a href="configuration/caches/cache.html">cache</a><br class="xooki-br"/>    <a href="configuration/latest-strategies.html">latest-strategies</a><br class="xooki-br"/>    <a href="configuration/version-matchers.html">version-matchers</a><br class="xooki-br"/>    <a href="configuration/triggers.html">triggers</a><br class="xooki-br
 "/>    <a href="configuration/parsers.html">parsers</a><br class="xooki-br"/>    <a href="configuration/conflict-managers.html">conflict-managers</a><br class="xooki-br"/>    <a href="configuration/outputters.html">outputters</a><br class="xooki-br"/>    <a href="configuration/namespaces.html">namespaces</a><br class="xooki-br"/>        <a href="configuration/namespace.html">namespace</a><br class="xooki-br"/>            <a href="configuration/namespace/rule.html">rule</a><br class="xooki-br"/>                <a href="configuration/namespace/fromtosystem.html">fromsystem</a><br class="xooki-br"/>                    <a href="configuration/namespace/src.html">src</a><br class="xooki-br"/>                    <a href="configuration/namespace/dest.html">dest</a><br class="xooki-br"/>                <a href="configuration/namespace/fromtosystem.html">tosystem</a><br class="xooki-br"/>                    <a href="configuration/namespace/src.html">src</a><br class="xooki-br"/>      
               <a href="configuration/namespace/dest.html">dest</a><br class="xooki-br"/>    <a href="configuration/macrodef.html">macrodef</a><br class="xooki-br"/>        <a href="configuration/macrodef/attribute.html">attribute</a><br class="xooki-br"/>        any resolver<br class="xooki-br"/>    <a href="configuration/resolvers.html">resolvers</a><br class="xooki-br"/>        any resolver<br class="xooki-br"/>    <a href="configuration/modules.html">modules</a><br class="xooki-br"/>        <a href="configuration/module.html">module</a><br class="xooki-br"/>    <a href="configuration/statuses.html">statuses</a><br class="xooki-br"/>        <a href="configuration/status.html">status</a>
 </pre>
 
 <h1>ivysettings</h1>
@@ -1709,7 +1715,7 @@
         <td>0..n</td></tr>
     <tr><td><a href="configuration/lock-strategies.html">lock-strategies</a></td><td>defines lock strategies</td>
         <td>0..1</td></tr>
-    <tr><td><a href="configuration/cache.html">cache</a></td><td>set up the cache</td>
+    <tr><td><a href="configuration/caches.html">caches</a></td><td>defines repository cache managers</td>
         <td>0..1</td></tr>
     <tr><td><a href="configuration/latest-strategies.html">latest-strategies</a></td><td>defines latest strategies</td>
         <td>0..1</td></tr>
@@ -1734,9 +1740,7 @@
     <tr><td><a href="configuration/statuses.html">statuses</a></td><td>defines the list of available statuses</td>
         <td>0..1</td></tr>
 </tbody>
-</table>
-
-	<hr/><div class='toc-title toc-title-4'>property</div><br class="xooki-br"/><b>Tag:</b> property<br class="xooki-br"/><br class="xooki-br"/>Defines an ivy variable. <span class="since">since 1.3</span>
+</table><hr/><div class='toc-title toc-title-4'>property</div><br class="xooki-br"/><b>Tag:</b> property<br class="xooki-br"/><br class="xooki-br"/>Defines an ivy variable. <span class="since">since 1.3</span>
 
 The optional override attribute enables to avoid overriding the previous value of the varable, which makes the definition behave like ant properties, which is particularly useful to define default values (values which are used only if they haven't been defined yet).<br class="xooki-br"/><h1>Attributes</h1>
 <table class="ivy-attributes">
@@ -1762,28 +1766,27 @@
 </pre>
 Sets the variable myvar to the value myvalue only if myvar has not been set yet.<br class="xooki-br"/><br class="xooki-br"/><br class="xooki-br"/>	<hr/><div class='toc-title toc-title-4'>properties</div><br class="xooki-br"/><b>Tag:</b> properties<br/>
 <br/>
-Loads a properties file into ivy variables. See variables chapter above for details about ivy variables.<br class="xooki-br"/><h1>Attributes</h1>
+Loads a properties file into ivy variables. See variables chapter above for details about ivy variables.<br class="xooki-br"/><br class="xooki-br"/><span class="since">Since 2.0</span>: it is possible to access environment variables. This can be done by specifying the environment attribute. This attribute specifies the prefix which can be used to access these environment variables. For instance, if you specify environment="env", you can access the PATH environment variable with the env.PATH property name.<br class="xooki-br"/><br class="xooki-br"/><h1>Attributes</h1>
 <table class="ivy-attributes">
 <thead>
     <tr><th class="ivy-att">Attribute</th><th class="ivy-att-desc">Description</th><th class="ivy-att-req">Required</th></tr>
 </thead>
 <tbody>
     <tr><td>file</td><td>a path to a properties file to load</td>
-        <td>Yes</td></tr>
-    <tr><td>override</td><td>indicates if the variable found in the properties file should override their previous value, if any <span class="since">since 1.3</span></td>
+        <td rowspan="2">One of these</td></tr>
+    <tr><td>environment</td><td>the prefix to use when retrieving environment variables <span class="since">(since 2.0)</span></td>
+    <tr><td>override</td><td>indicates if the variable found in the properties file should override their previous value, if any <span class="since">(since 1.3)</span></td>
         <td>No, defaults to true</td></tr>
 </tbody>
 </table>
 
 
-	<hr/><div class='toc-title toc-title-4'>settings</div><br class="xooki-br"/><b>Tag:</b> settings<br class="xooki-br"/><br class="xooki-br"/>Configures some important ivy info: default cache, default resolver, ...<br class="xooki-br"/><br class="xooki-br"/>Default cache is used whenever a cache is not provided. It usually points to a directory in your filesystem. <strong>This should not point to a directory used as a repository!</strong><br class="xooki-br"/><span class="since">Since 2.0</span> Once the settings are loaded, the value of the defaultCache (either configured or the default value) is stored in an Ivy variable: ivy.cache.dir.<br class="xooki-br"/><span class="since">Since 2.0</span> A new <a href="../../history/latest-milestone/configuration/cache.html">cache</a> tag is provided where you can fully configure the cache. As of 2.0 beta 1, we recommend using the cache tag even though configuring using the attributes available on this tag is still possible.<br class=
 "xooki-br"/><br class="xooki-br"/><br class="xooki-br"/>Default resolver is used whenever nothing else is configured in the modules section of the configuration file. It should give the name of a dependency resolver defined in the resolvers section of the configuration file.<br class="xooki-br"/><br class="xooki-br"/>Default latest strategy and conflict manager can also be configured here.<br class="xooki-br"/><br class="xooki-br"/>validate indicates if ivy files should generally be validate against xsd or not. This setting is only a default value, and can be overriden :<br class="xooki-br"/>1) in ant tasks<br class="xooki-br"/>2) in resolvers<br class="xooki-br"/>So if there is a setting in the resolver, it always win against all other settings.<br class="xooki-br"/><br class="xooki-br"/>checkUpToDate indicates to ivy if it must check date of artifacts before retrieving them (i.e. copying them from<br class="xooki-br"/>cache to another place in your filesystem). Usually it 
 is a good thing to check date to avoid unnecessary copy, even if it's most of the time a local copy.<br class="xooki-br"/><br class="xooki-br"/><h1>Attributes</h1>
+	<hr/><div class='toc-title toc-title-4'>settings</div><br class="xooki-br"/><b>Tag:</b> settings<br class="xooki-br"/><br class="xooki-br"/>Configures some important ivy info: default resolver, latest strategy, conflict manager...<br class="xooki-br"/><br class="xooki-br"/>Default resolver is used whenever nothing else is configured in the modules section of the settings file. It should give the name of a dependency resolver defined in the <a href="../../history/latest-milestone/configuration/resolvers.html">resolvers</a> section of the settings file.<br class="xooki-br"/><br class="xooki-br"/>Default latest strategy and conflict manager can also be configured here.<br class="xooki-br"/><br class="xooki-br"/><em>validate</em> indicates if ivy files should generally be validated against the xsd or not. This setting is only a default value, and can be overridden:<br class="xooki-br"/>1) in ant tasks<br class="xooki-br"/>2) in resolvers<br class="xooki-br"/>So if there is a se
 tting in the resolver, it always wins against all other settings.<br class="xooki-br"/><br class="xooki-br"/><h1>Attributes</h1>
 <table class="ivy-attributes">
 <thead>
     <tr><th class="ivy-att">Attribute</th><th class="ivy-att-desc">Description</th><th class="ivy-att-req">Required</th></tr>
 </thead>
 <tbody>
-    <tr><td>defaultCache</td><td>a path to a directory to use as default cache.  <i>We recommend using the basedir on the <a href="../../history/latest-milestone/configuration/cache.html">cache</a> tag instead</i></td>
-        <td>No, defaults to .ivy2/cache in user home</td></tr>
     <tr><td>defaultResolver</td><td>the name of the default resolver to use</td>
         <td>No, but all modules should be configured in the modules section if not provided</td></tr>
     <tr><td>defaultLatestStrategy</td><td>the name of the default latest strategy to use</td>
@@ -1796,18 +1799,19 @@
         <td>No, defaults to warn</td></tr>
     <tr><td>validate</td><td>Indicates if ivy files should be validated against ivy.xsd or not.</td>
         <td>No, defaults to true</td></tr>
-    <tr><td>checkUpToDate</td><td>Indicates if date should be checked before retrieving artifacts from cache</td>
+    <tr><td>useRemoteConfig</td><td>true to configure ivyrep and ibiblio resolver from a remote configuration file (updated with changes in those repository structure if any) (<span class="since">since 1.2</span>)</td>
+        <td>No, defaults to false</td></tr>
+    <tr><td><s>defaultCache</s></td><td>a path to a directory to use as default basedir for both resolution and repository cache(s).<br class="xooki-br"/>	    <i>Deprecated, we recommend using defaultCacheDir on the <a href="../../history/latest-milestone/configuration/caches.html">caches</a> tag instead</i></td>
+        <td>No, defaults to .ivy2/cache in user home</td></tr>
+    <tr><td><s>checkUpToDate</s></td><td>Indicates if date should be checked before retrieving artifacts from cache.<br class="xooki-br"/>    	<i>Deprecated, we recommend using checkUpToDate on the <a href="../../history/latest-milestone/configuration/caches.html">caches</a> tag instead</i></td>
         <td>No, defaults to true</td></tr>
-    <tr><td>cacheIvyPattern</td><td>a pattern to indicate where ivy files should be put in cache. <i>We recommend using the repositoryIvyPattern on the <a href="../../history/latest-milestone/configuration/cache.html">cache</a> tag instead</i></td>
+    <tr><td><s>cacheIvyPattern</s></td><td>a pattern to indicate where ivy files should be put in cache.<br class="xooki-br"/>    	<i>Deprecated, we recommend using ivyPattern on the <a href="../../history/latest-milestone/configuration/caches.html">caches</a> tag instead</i></td>
         <td>No, defaults to [organisation]/[module]/ivy-[revision].xml</td></tr>
-    <tr><td>cacheArtifactPattern</td><td>a pattern to indicate where artifact files should be put in cache. <i>We recommend using the repositoryArtifactPattern on the <a href="../../history/latest-milestone/configuration/cache.html">cache</a> tag instead</i></td>
+    <tr><td><s>cacheArtifactPattern</s></td><td>a pattern to indicate where artifact files should be put in cache.<br class="xooki-br"/>    	<i>Deprecated, we recommend using artifactPattern on the <a href="../../history/latest-milestone/configuration/caches.html">caches</a> tag instead</i></td>
         <td>No, defaults to [organisation]/[module]/[type]s/[artifact]-[revision].[ext]</td></tr>
-    <tr><td>useRemoteConfig</td><td>true to configure ivyrep and ibiblio resolver from a remote configuration file (updated with changes in those repository structure if any) (<span class="since">since 1.2</span>)</td>
-        <td>No, defaults to false</td></tr>
 </tbody>
 </table>
-
-	<hr/><div class='toc-title toc-title-4'>include</div><br class="xooki-br"/><b>Tag:</b> include<br class="xooki-br"/><br class="xooki-br"/>Includes another ivysettings file as if it were part of this one. <span class="since">since 1.3</span>
+<hr/><div class='toc-title toc-title-4'>include</div><br class="xooki-br"/><b>Tag:</b> include<br class="xooki-br"/><br class="xooki-br"/>Includes another ivysettings file as if it were part of this one. <span class="since">since 1.3</span>
 
 The included ivysettings file has to be a complete well formed ivysettings file, i.e. it does have to include the <pre>&lt;ivysettings&gt;</pre> tag.<br class="xooki-br"/><br class="xooki-br"/><h1>Attributes</h1>
 <table class="ivy-attributes">
@@ -1871,7 +1875,7 @@
 
 	<hr/><div class='toc-title toc-title-4'>lock-strategies</div><br class="xooki-br"/><b>Tag:</b> lock-strategies <span class="since">since 2.0</span>
 
-Defines a list of lock strategies usable in Ivy. <br class="xooki-br"/><br class="xooki-br"/>A lock strategy is used by a cache manager to decide when and how locking should be performed (see <a href="../../history/latest-milestone/configuration/cache.html">cache</a> to see how to configure the lock strategy to use).<br class="xooki-br"/><br class="xooki-br"/>Two lock strategies are registered by default:
+Defines a list of lock strategies usable in Ivy. <br class="xooki-br"/><br class="xooki-br"/>A lock strategy is used by a cache manager to decide when and how locking should be performed (see configuration/cache to see how to configure the lock strategy to use).<br class="xooki-br"/><br class="xooki-br"/>Two lock strategies are registered by default:
 <ul>
 <li><b>no-lock</b></li> This lock strategy actually performs no locking at all, and thus should not be used in environment where the cache is shared by multiple processes. <br class="xooki-br"/><br class="xooki-br"/>This strategy is implemented by (<a href="https://svn.apache.org/repos/asf/ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/lock/NoLockStrategy.java">NoLockStrategy</a>)<br class="xooki-br"/><br class="xooki-br"/>
 <li><b>artifact-lock</b></li> This strategy acquire a lock whenever a module descriptor or an artifact is downloaded to the cache, which makes a good solution when you want to share your repository cache.<br class="xooki-br"/><br class="xooki-br"/>Note that this strategy is based on file locking, performed by default using the java.io.File.createNewFile() atomicity (which is documented as atomic in the javadoc, but not recommended to perform locks). A java.nio.FileLock based implementation is also provided, but according to our tests the createNewFile based one performs better and more reliably. We heavily recommend making your own testing in your target environment before relying on this lock strategy for heavily concurrent operations.<br class="xooki-br"/><br class="xooki-br"/>This strategy is implemented by (<a href="https://svn.apache.org/repos/asf/ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/lock/ArtifactLockStrategy.java">ArtifactLockStrategy</a>)
@@ -1886,38 +1890,109 @@
     <tr><td>any lock strategy</td><td>adds a lock strategy to the list of available ones</td>
         <td>0..n</td></tr>
 </tbody>
-</table><hr/><div class='toc-title toc-title-4'>cache</div><br class="xooki-br"/><b>Tag:</b> cache<br class="xooki-br"/><br class="xooki-br"/><span class="since">since 2.0</span> Configures the Ivy cache.<br class="xooki-br"/><br class="xooki-br"/>Ivy cache is composed of two different parts:
-<ul>
-<li>the repository cache</li>
-The repository cache is where Ivy stores data downloaded from module repositories, along with some meta information concerning these artifacts, like their original location.<br class="xooki-br"/>This part of the cache can be shared if you use an ad hoc <a href="../../history/latest-milestone/configuration/lock-strategies.html">lock strategy</a>. 
-<li>the resolution cache</li>
-This part of the cache is used to store resolution data, which is used by Ivy to reuse the results of a resolve process.<br class="xooki-br"/>This part of the cache is overwritten each time a new resolve is performed, and should never be used by multiple processes at the same time.
-</ul>
-
-Here are some details on the available settings attributes:<br class="xooki-br"/><br class="xooki-br"/><em>basedir</em> is the base directory where the cache will be stored. All other cache related paths are relative to this basedir.<br class="xooki-br"/>It usually points to a directory in the local filesystem. <br class="xooki-br"/><strong>This should not point to a directory used as a repository!</strong><br class="xooki-br"/><br class="xooki-br"/>Once the settings are loaded, the value of the defaultCache (either configured or the default value) is stored in an Ivy variable: ivy.cache.dir.<br class="xooki-br"/><br class="xooki-br"/><em>repositoryDir</em> and <em>resolutionDir</em> are used to configure the base location of the repository and resolution parts of the cache.<br class="xooki-br"/><br class="xooki-br"/><em>repositoryIvyPattern</em> and <em>repositoryArtifactPattern</em> are used to configure the way Ivy stores ivy files and artifacts in the cache. Usually you 
 do not have to change this, unless you want to use the cache directly from another tool, which is not recommended. These patterns are relative to the repository cache root.<br class="xooki-br"/><br class="xooki-br"/><em>lockStrategy</em> is used to define the lock strategy to use when accessing the repository cache.<br class="xooki-br"/><br class="xooki-br"/><h1>Attributes</h1>
+</table><hr/><div class='toc-title toc-title-4'>caches</div><br class="xooki-br"/><b>Tag:</b> caches<br class="xooki-br"/><br class="xooki-br"/>Configures the Ivy cache system. <span class="since">since 2.0</span>.<br class="xooki-br"/>See <a href="../concept.html#cache">cache concept</a> for details on the Ivy cache concept.<br class="xooki-br"/><br class="xooki-br"/>By default, Ivy defines one repository cache instance, called 'default-cache', which uses the default cache settings defined using attributes on this tag. This default instance is defined as long as you don't define your own default cache using the 'default' attribute, and have at least one dependency resolver which doesn't specify which cache instance to use.<br class="xooki-br"/><br class="xooki-br"/><em>defaultCacheDir</em> is the default directory used for both the resolution and repository cache(s). It usually points to a directory in your filesystem. If you want to isolate resolution cache from repository
  cache, we recommend setting both the resolutionCacheDir and repositoryCacheDir attributes on this tag instead of using defaultCacheDir.<br class="xooki-br"/><br class="xooki-br"/>Since repository cache implementations are pluggable, you can either define new cache instances based on the default implementation provided in Ivy using the <a href="../../history/latest-milestone/configuration/caches/cache.html">cache</a> child element, or use custom cache implementations using child elements as you have defined using <a href="../../history/latest-milestone/configuration/typedef.html">typedef</a>.<br class="xooki-br"/><br class="xooki-br"/><em>ivyPattern</em> and <em>artifactPattern</em> are used to configure the default way Ivy stores ivy files and artifacts in repository cache(s). Usually you do not have to change this, unless you want to use the cache directly from another tool, which is not recommended. These patterns are relative to the repository cache base directory.<br cl
 ass="xooki-br"/><br class="xooki-br"/><em>checkUpToDate</em> indicates to ivy if it must check date of artifacts before retrieving them (i.e. copying them from<br class="xooki-br"/>cache to another place in your filesystem). Usually it is a good thing to check date to avoid unnecessary copy, even if it's most of the time a local copy.<br class="xooki-br"/><br class="xooki-br"/><h1>Attributes</h1>
 <table class="ivy-attributes">
 <thead>
     <tr><th class="ivy-att">Attribute</th><th class="ivy-att-desc">Description</th><th class="ivy-att-req">Required</th></tr>
 </thead>
 <tbody>
-    <tr><td>basedir</td><td>a path to a directory to use as base directory for the cache.</td>
-        <td>No, defaults to .ivy2/cache in user home</td></tr>
-    <tr><td>resolutionDir</td><td>the path of the directory to use to put all resolution cache data</td>
-        <td>No, defaults to empty string (ie cache basedir)</td></tr>
-    <tr><td>repositoryDir</td><td>the path of the directory to use to put all repository cache data</td>
-        <td>No, defaults to empty string (ie cache basedir)</td></tr>
-    <tr><td>repositoryIvyPattern</td><td>a pattern to indicate where ivy files should be put in the repository cache</td>
+    <tr><td>default</td><td>the name of the default cache to use on all resolvers not defining the cache instance to use</td>
+        <td>No, defaults to a default cache manager instance named 'default-cache'</td></tr>
+    <tr><td>defaultCacheDir</td><td>a path to a directory to use as default basedir for both resolution and repository cache(s)</td>
+        <td>No, defaults to .ivy2/cache in the user's home directory</td></tr>
+    <tr><td>resolutionCacheDir</td><td>the path of the directory to use for all resolution cache data</td>

[... 477 lines stripped ...]


Mime
View raw message