You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by ma...@apache.org on 2010/10/06 23:25:35 UTC

svn commit: r1005260 [10/45] - in /ant/ivy/site/target/history/2.2.0: ./ configuration/ configuration/caches/ configuration/macrodef/ configuration/namespace/ dev/ images/ ivyfile/ js/ resolver/ samples/ settings/ settings/caches/ settings/macrodef/ se...

Added: ant/ivy/site/target/history/2.2.0/dev/makerelease.html
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/dev/makerelease.html?rev=1005260&view=auto
==============================================================================
--- ant/ivy/site/target/history/2.2.0/dev/makerelease.html (added)
+++ ant/ivy/site/target/history/2.2.0/dev/makerelease.html Wed Oct  6 21:25:29 2010
@@ -0,0 +1,233 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one
+   or more contributor license agreements.  See the NOTICE file
+   distributed with this work for additional information
+   regarding copyright ownership.  The ASF licenses this file
+   to you under the Apache License, Version 2.0 (the
+   "License"); you may not use this file except in compliance
+   with the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing,
+   software distributed under the License is distributed on an
+   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+   KIND, either express or implied.  See the License for the
+   specific language governing permissions and limitations
+   under the License.    
+-->
+<html>
+<head>
+	<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">
+	<script type="text/javascript">var xookiConfig = {level: 1};</script>	
+	
+
+<title>Making a release | Apache Ivy</title>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+  <link rel="stylesheet" type="text/css" href="../style/style.css" />
+  <script src="../js/jquery.pack.js" type="text/javascript"></script>
+  <script src="../js/jquery.treeview.js" type="text/javascript"></script>
+  <script type="text/javascript">
+  $(document).ready(function(){$("#treemenu").Treeview({speed: "fast",store: true});});
+  </script>
+
+<script language="javascript" type="text/javascript">xooki = {u: function(url) {return "../xooki/"+url;}};</script>
+</head>
+<body>
+
+<div id="body">
+<table id="header" summary="Navigation elements." border="0"
+	cellpadding="0" cellspacing="0" width="100%">
+	<tr>
+		<td id="home" width="30%"><a href="http://ant.apache.org/"
+			title="Apache Ant"><img src="../images/ant-group-logo.gif" alt="Apache Ant"
+			border="0" /></a></td>
+
+		<td class="product" width="70%" align="right" valign="middle"><img
+			src="../images/logo.png" alt="ivy" border="0" /></td>
+	</tr>
+</table>
+
+<table id="top-menu" summary="Navigation elements." border="0"
+	cellpadding="0" cellspacing="0" width="100%">
+	<tr>
+		<td>
+
+        <div style="float:right;margin: 0 10px;">
+        <!-- Google CSE Search Box Begins -->
+  <form id="searchbox_014292259695392975429:5y6qypnrni8" action="http://ant.apache.org/ivy/search.html">
+    <input type="hidden" name="cx" value="014292259695392975429:5y6qypnrni8" />
+    <input type="hidden" name="cof" value="FORID:11" />
+    <input name="q" type="text" size="30" />
+    <input type="submit" name="sa" value="Search" />
+  </form>
+  <script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=searchbox_014292259695392975429%3A5y6qypnrni8"></script>
+<!-- Google CSE Search Box Ends -->
+        </div>
+
+		<div id="navcontainer">
+		<a href="http://ant.apache.org/">Apache Ant</a> &gt; <a href="http://ant.apache.org/ivy/">Ivy</a> &gt; <a href="http://ant.apache.org/ivy/history.html">History</a> &gt; <span class="breadCrumb"><a href="../index.html" >Documentation (2.2.0)</a> &gt; <a href="../dev.html" >Developer doc</a> &gt; <a href="../dev/makerelease.html" class="current">Making a release</a></span>
+		</div>
+		</td>
+	</tr>
+
+</table>
+
+<table id="content" border="0" cellpadding="0" cellspacing="0"
+	width="100%">
+	<tr>
+		<td id="sidebar-left">
+		<div class="block block-book" id="block-book-0">
+		<h2>Ivy</h2>
+
+		<div class="content"><ul id="treemenu" class="treeview"><li id="xooki-index" class="submenu"><a href="../index.html" >Documentation (2.2.0)</a><ul class="open"><li id="xooki-release-notes"><a href="../release-notes.html" >Release Notes</a></li><li id="xooki-tutorial" class="submenu"><a href="../tutorial.html" >Tutorials</a><ul class="closed"><li id="xooki-tutorial/start"><a href="../tutorial/start.html" >Quick Start</a></li><li id="xooki-tutorial/defaultconf"><a href="../tutorial/defaultconf.html" >Adjusting default settings</a></li><li id="xooki-tutorial/multiple"><a href="../tutorial/multiple.html" >Multiple Resolvers</a></li><li id="xooki-tutorial/dual"><a href="../tutorial/dual.html" >Dual Resolver</a></li><li id="xooki-tutorial/dependence"><a href="../tutorial/dependence.html" >Project dependencies</a></li><li id="xooki-tutorial/multiproject"><a href="../tutorial/multiproject.html" >Using Ivy in multiple projects environment</a></li><li id="xooki-tutorial/conf"><a hre
 f="../tutorial/conf.html" >Using Ivy Module Configurations</a></li><li id="xooki-tutorial/build-repository" class="submenu"><a href="../tutorial/build-repository.html" >Building a repository</a><ul class="closed"><li id="xooki-tutorial/build-repository/basic"><a href="../tutorial/build-repository/basic.html" >Basic repository copy</a></li><li id="xooki-tutorial/build-repository/advanced"><a href="../tutorial/build-repository/advanced.html" >Using namespaces</a></li></ul></li><li id="xooki-moreexamples"><a href="../moreexamples.html" >More examples</a></li></ul></li><li id="xooki-reference" class="submenu"><a href="../reference.html" >Reference</a><ul class="closed"><li id="xooki-intro" class="submenu">Introduction<ul class="closed"><li id="xooki-terminology"><a href="../terminology.html" >Terminology</a></li><li id="xooki-concept"><a href="../concept.html" >Main Concepts</a></li><li id="xooki-textual"><a href="../textual.html" >Text Conventions</a></li><li id="xooki-principl
 e"><a href="../principle.html" >How does it work ?</a></li><li id="xooki-bestpractices"><a href="../bestpractices.html" >Best practices</a></li><li id="xooki-install"><a href="../install.html" >Installation</a></li></ul></li><li id="xooki-settings" class="submenu"><a href="../settings.html" >Settings Files</a><ul class="closed"><li id="xooki-settings/property"><a href="../settings/property.html" >property</a></li><li id="xooki-settings/properties"><a href="../settings/properties.html" >properties</a></li><li id="xooki-settings/settings"><a href="../settings/settings.html" >settings</a></li><li id="xooki-settings/include"><a href="../settings/include.html" >include</a></li><li id="xooki-settings/classpath"><a href="../settings/classpath.html" >classpath</a></li><li id="xooki-settings/typedef"><a href="../settings/typedef.html" >typedef</a></li><li id="xooki-settings/credentials"><a href="../settings/credentials.html" >credentials</a></li><li id="xooki-settings/signers"><a hre
 f="../settings/signers.html" >signers</a></li><li id="xooki-settings/lock-strategies"><a href="../settings/lock-strategies.html" >lock-strategies</a></li><li id="xooki-settings/caches" class="submenu"><a href="../settings/caches.html" >caches</a><ul class="closed"><li id="xooki-settings/caches/cache" class="submenu"><a href="../settings/caches/cache.html" >cache</a><ul class="closed"><li id="xooki-settings/caches/ttl"><a href="../settings/caches/ttl.html" >ttl</a></li></ul></li></ul></li><li id="xooki-settings/latest-strategies"><a href="../settings/latest-strategies.html" >latest-strategies</a></li><li id="xooki-settings/parsers"><a href="../settings/parsers.html" >parsers</a></li><li id="xooki-settings/namespaces" class="submenu"><a href="../settings/namespaces.html" >namespaces</a><ul class="closed"><li id="xooki-settings/namespace" class="submenu"><a href="../settings/namespace.html" >namespace</a><ul class="closed"><li id="xooki-settings/namespace/rule" class="submenu">
 <a href="../settings/namespace/rule.html" >rule</a><ul class="closed"><li id="xooki-settings/namespace/fromtosystem" class="submenu"><a href="../settings/namespace/fromtosystem.html" >fromsystem / tosystem</a><ul class="closed"><li id="xooki-settings/namespace/src"><a href="../settings/namespace/src.html" >src</a></li><li id="xooki-settings/namespace/dest"><a href="../settings/namespace/dest.html" >dest</a></li></ul></li></ul></li></ul></li></ul></li><li id="xooki-settings/macrodef" class="submenu"><a href="../settings/macrodef.html" >macrodef</a><ul class="closed"><li id="xooki-settings/macrodef/attribute"><a href="../settings/macrodef/attribute.html" >attribute</a></li></ul></li><li id="xooki-settings/resolvers" class="submenu"><a href="../settings/resolvers.html" >resolvers</a><ul class="closed"><li id="xooki-resolver/ivyrep"><a href="../resolver/ivyrep.html" >IvyRep Resolver</a></li><li id="xooki-resolver/ibiblio"><a href="../resolver/ibiblio.html" >IBiblio Resolver</a><
 /li><li id="xooki-resolver/packager"><a href="../resolver/packager.html" >Packager resolver</a></li><li id="xooki-resolver/filesystem"><a href="../resolver/filesystem.html" >File System resolver</a></li><li id="xooki-resolver/url"><a href="../resolver/url.html" >Url Resolver</a></li><li id="xooki-resolver/chain"><a href="../resolver/chain.html" >Chain Resolver</a></li><li id="xooki-resolver/dual"><a href="../resolver/dual.html" >Dual resolver</a></li><li id="xooki-resolver/sftp"><a href="../resolver/sftp.html" >sftp resolver</a></li><li id="xooki-resolver/ssh"><a href="../resolver/ssh.html" >ssh resolver</a></li><li id="xooki-resolver/vfs"><a href="../resolver/vfs.html" >vfs</a></li></ul></li><li id="xooki-settings/conflict-managers"><a href="../settings/conflict-managers.html" >conflict-managers</a></li><li id="xooki-settings/modules" class="submenu"><a href="../settings/modules.html" >modules</a><ul class="closed"><li id="xooki-settings/module"><a href="../settings/module.
 html" >module</a></li></ul></li><li id="xooki-settings/outputters"><a href="../settings/outputters.html" >outputters</a></li><li id="xooki-settings/statuses" class="submenu"><a href="../settings/statuses.html" >statuses</a><ul class="closed"><li id="xooki-settings/status"><a href="../settings/status.html" >status</a></li></ul></li><li id="xooki-settings/triggers"><a href="../settings/triggers.html" >triggers</a></li><li id="xooki-settings/version-matchers"><a href="../settings/version-matchers.html" >version-matchers</a></li></ul></li><li id="xooki-ivyfile" class="submenu"><a href="../ivyfile.html" >Ivy Files</a><ul class="closed"><li id="xooki-ivyfile/info" class="submenu"><a href="../ivyfile/info.html" >info</a><ul class="closed"><li id="xooki-ivyfile/extends"><a href="../ivyfile/extends.html" >extends</a></li><li id="xooki-ivyfile/license"><a href="../ivyfile/license.html" >license</a></li><li id="xooki-ivyfile/ivyauthor"><a href="../ivyfile/ivyauthor.html" >ivyauthor</a>
 </li><li id="xooki-ivyfile/repository"><a href="../ivyfile/repository.html" >repository</a></li><li id="xooki-ivyfile/description"><a href="../ivyfile/description.html" >description</a></li></ul></li><li id="xooki-ivyfile/configurations" class="submenu"><a href="../ivyfile/configurations.html" >configurations</a><ul class="closed"><li id="xooki-ivyfile/conf"><a href="../ivyfile/conf.html" >conf</a></li><li id="xooki-ivyfile/include"><a href="../ivyfile/include.html" >include</a></li></ul></li><li id="xooki-ivyfile/publications" class="submenu"><a href="../ivyfile/publications.html" >publications</a><ul class="closed"><li id="xooki-ivyfile/artifact" class="submenu"><a href="../ivyfile/artifact.html" >artifact</a><ul class="closed"><li id="xooki-ivyfile/artifact-conf"><a href="../ivyfile/artifact-conf.html" >conf</a></li></ul></li></ul></li><li id="xooki-ivyfile/dependencies" class="submenu"><a href="../ivyfile/dependencies.html" >dependencies</a><ul class="closed"><li id="xoo
 ki-ivyfile/dependency" class="submenu"><a href="../ivyfile/dependency.html" >dependency</a><ul class="closed"><li id="xooki-ivyfile/dependency-conf" class="submenu"><a href="../ivyfile/dependency-conf.html" >conf</a><ul class="closed"><li id="xooki-ivyfile/mapped"><a href="../ivyfile/mapped.html" >mapped</a></li></ul></li><li id="xooki-ivyfile/dependency-artifact" class="submenu"><a href="../ivyfile/dependency-artifact.html" >artifact</a><ul class="closed"><li id="xooki-ivyfile/dependency-artifact-conf"><a href="../ivyfile/dependency-artifact-conf.html" >conf</a></li></ul></li><li id="xooki-ivyfile/artifact-exclude" class="submenu"><a href="../ivyfile/artifact-exclude.html" >exclude</a><ul class="closed"><li id="xooki-ivyfile/artifact-exclude-conf"><a href="../ivyfile/artifact-exclude-conf.html" >conf</a></li></ul></li><li id="xooki-ivyfile/dependency-include" class="submenu"><a href="../ivyfile/dependency-include.html" >include</a><ul class="closed"><li id="xooki-ivyfile/de
 pendency-include-conf"><a href="../ivyfile/dependency-include-conf.html" >conf</a></li></ul></li></ul></li><li id="xooki-ivyfile/exclude"><a href="../ivyfile/exclude.html" >exclude</a></li><li id="xooki-ivyfile/override"><a href="../ivyfile/override.html" >override</a></li><li id="xooki-ivyfile/conflict"><a href="../ivyfile/conflict.html" >conflict</a></li></ul></li><li id="xooki-ivyfile/conflicts" class="submenu"><a href="../ivyfile/conflicts.html" >conflicts</a><ul class="closed"><li id="xooki-ivyfile/manager"><a href="../ivyfile/manager.html" >manager</a></li></ul></li></ul></li><li id="xooki-ant" class="submenu"><a href="../ant.html" >Ant Tasks</a><ul class="closed"><li id="xooki-use/artifactproperty"><a href="../use/artifactproperty.html" >artifactproperty</a></li><li id="xooki-use/artifactreport"><a href="../use/artifactreport.html" >artifactreport</a></li><li id="xooki-use/buildlist"><a href="../use/buildlist.html" >buildlist</a></li><li id="xooki-use/buildnumber"><a 
 href="../use/buildnumber.html" >buildnumber</a></li><li id="xooki-use/cachefileset"><a href="../use/cachefileset.html" >cachefileset</a></li><li id="xooki-use/cachepath"><a href="../use/cachepath.html" >cachepath</a></li><li id="xooki-use/cleancache"><a href="../use/cleancache.html" >cleancache</a></li><li id="xooki-use/configure"><a href="../use/configure.html" >configure</a></li><li id="xooki-use/deliver"><a href="../use/deliver.html" >deliver</a></li><li id="xooki-use/findrevision"><a href="../use/findrevision.html" >findrevision</a></li><li id="xooki-use/info"><a href="../use/info.html" >info</a></li><li id="xooki-use/install"><a href="../use/install.html" >install</a></li><li id="xooki-use/listmodules"><a href="../use/listmodules.html" >listmodules</a></li><li id="xooki-use/makepom"><a href="../use/makepom.html" >makepom</a></li><li id="xooki-use/postresolvetask"><a href="../use/postresolvetask.html" >post resolve tasks</a></li><li id="xooki-use/publish"><a href="../use
 /publish.html" >publish</a></li><li id="xooki-use/repreport"><a href="../use/repreport.html" >repreport</a></li><li id="xooki-use/resolve"><a href="../use/resolve.html" >resolve</a></li><li id="xooki-use/retrieve"><a href="../use/retrieve.html" >retrieve</a></li><li id="xooki-use/report" class="submenu"><a href="../use/report.html" >report</a><ul class="closed"><li id="xooki-yed"><a href="../yed.html" >Using yEd to layout report graphs</a></li></ul></li><li id="xooki-use/settings"><a href="../use/settings.html" >settings</a></li><li id="xooki-use/var"><a href="../use/var.html" >var</a></li></ul></li><li id="xooki-standalone"><a href="../standalone.html" >Using standalone</a></li></ul></li><li id="xooki-dev" class="submenu"><a href="../dev.html" >Developer doc</a><ul class="open"><li id="xooki-extend"><a href="../extend.html" >Extending Ivy</a></li><li id="xooki-dev/makerelease"><a href="../dev/makerelease.html" class="current">Making a release</a></li><li id="xooki-dev/updat
 esite"><a href="../dev/updatesite.html" >Updating the updatesite</a></li></ul></li></ul></li></ul></div>
+
+		<center><iframe src="http://www.apache.org/ads/buttonbar.html"
+                         style="border-width:0;" frameborder="0" scrolling="no"
+                         width="135" height="265"></iframe>
+                </center>
+                
+		</div>
+
+		</td>
+		
+		<td valign="top">
+		<div id="main">
+
+		<h1 class="title">Making a release</h1>
+            <br class="xooki-br"/><h1>Making a release</h1>
+<h2>Requirements</h2>
+Requirements for making a release are similar to the requirements for building from source, except that sun jdk 1.6 and ant 1.7 are required.<br class="xooki-br"/><h2>Procedure</h2>
+<h3>1. Check the files which needs to be updated for the release.</h3>
+On the trunk, check that files which require update for the release are up to date.<br class="xooki-br"/>This includes particularly:<br class="xooki-br"/>RELEASE_NOTES<br class="xooki-br"/>CHANGES<br class="xooki-br"/>README<br class="xooki-br"/><h3>2. Create a release branch</h3>
+This will allow to work separately from other developers, in case you need any last modification.
+<pre>
+svn copy <a href="https://svn.apache.org/repos/asf/ant/ivy/core/trunk">https://svn.apache.org/repos/asf/ant/ivy/core/trunk</a> \<br class="xooki-br"/>           <a href="https://svn.apache.org/repos/asf/ant/ivy/core/branches/2.0.0-beta1">https://svn.apache.org/repos/asf/ant/ivy/core/branches/2.0.0-beta1</a> \<br class="xooki-br"/>      -m "Creating a release branch for 2.0.0-beta1."
+</pre>
+<h3>3. Check out the branch</h3>
+<pre>
+svn co <a href="https://svn.apache.org/repos/asf/ant/ivy/core/branches/2.0.0-beta1">https://svn.apache.org/repos/asf/ant/ivy/core/branches/2.0.0-beta1</a> ivy-2.0.0-beta1
+</pre>
+<h3>4. Add Ivy xsd file.</h3>
+You need to store the current ivy xml schema in the documentation, so that it will later be accessible on public web site. To do so, run the following command in the directory in which you checked out the release branch:
+<pre>
+ant -f build-release.xml release-xsd
+</pre>
+
+<h3>5. Add release note page in the documentation.</h3>
+Open the file doc/index.html with your favorite browser, and click on the plus button in the upper right. Choose "Release Notes" as title, and "release-notes" as page id. <br class="xooki-br"/><br class="xooki-br"/>Then edit the page (hit the first button at the upper right), and copy the content of the RELEASE_NOTES file.<br class="xooki-br"/><br class="xooki-br"/>You can also add the announcement for the release if it's already ready. If this is an incubator version, add the usual incubator disclaimer too.<br class="xooki-br"/><br class="xooki-br"/>Move the page up in the TOC using the arrow button in the toolbar at the upper right, so that it's the first child page under the "Documentation" page.<br class="xooki-br"/><br class="xooki-br"/>If you take the time to make the content of the release notes more "xooki compliant" (by removing unnecessary end of lines and adding h2 h3 and h4 tags), the page could then look like something like that:<br class="xooki-br"/><a href="ht
 tp://ant.apache.org/ivy/history/2.0.0-alpha-1.html">http://ant.apache.org/ivy/history/2.0.0-alpha-1.html</a><br class="xooki-br"/><br class="xooki-br"/><h3>6. Commit your changes</h3>
+<pre>
+svn status<br class="xooki-br"/>svn add doc/ivy.xsd<br class="xooki-br"/>svn add doc/release-notes.html<br class="xooki-br"/>svn ci -m "update templates, add release notes and ivy.xsd in documentation."
+</pre>
+<h3>7. Check that you have no pending modifications</h3>
+<pre>
+svn status
+</pre>
+If your working copy is clean, you can launch the release script. If it isn't, make sure to clean it properly. Sometimes you may need to call ant clean-all if you have started to work with ant builds. If you are confused about your working copy state, delete it and check it out again.<br class="xooki-br"/><h3>8. Launch the release script</h3>
+<pre>
+ant -f build-release.xml release
+</pre>
+The status should be release only for final releases, and milestone for any other intermediate release.<br class="xooki-br"/>If anything is wrong, fix and go back to step 4.<br class="xooki-br"/>If the release script is successful, release artifacts will be waiting for you in the build/distrib directory.<br class="xooki-br"/><h3>9. Verify the release</h3>
+Check that all zips can be opened correctly, and that running 'ant' after unzipping the source distribution works properly.<br class="xooki-br"/>You can also do a smoke test with the generated ivy.jar , to see if it is able to resolve properly a basic module (for instance you can run some tutorials provided in the src/example directory in all distributions).<br class="xooki-br"/><h3>10. Sign and upload the artifacts</h3>
+It's now time to sign the release artifacts and upload them to a location accessible by other Apache commiters.<br class="xooki-br"/><br class="xooki-br"/>Here is a simple way to sign the files using gnupg:
+<pre>
+gpg --armor --output file.zip.asc --detach-sig file.zip
+</pre>
+
+Here is a ruby script you can use to sign the files:
+<pre>
+require 'find'<br class="xooki-br"/><br class="xooki-br"/>Find.find('build/distrib') do |f| <br class="xooki-br"/>    `gpg --armor --output #{f}.asc --detach-sig #{f}` if File.file?(f) && ['.zip', '.gz', '.jar', '.pom'].include?(File.extname(f))<br class="xooki-br"/>end
+</pre>
+Be prepared to enter your passphrase several times if you use this script, gpg will ask for your passphrase for each file to sign.<br class="xooki-br"/><br class="xooki-br"/>When you're done upload the content of the distrib directory to a publicly accessible web site, your apache personal site being a good location for this. Make sure you include some kind of disclaimer somewhere to inform people the release is not approved yet.<br class="xooki-br"/><br class="xooki-br"/>You can for example add a HEADER.html like this:
+<pre>
+&lt;h2&gt;WARNING: files available here are NOT an Apache approved release yet.&lt;/h2&gt;
+</pre>
+
+<h3>11. Prepare the Eclipse update site</h3>
+
+To be able to test the release within IvyDE, it can be deployed in the IvyDE update site. See <a href="updatesite.html">that page</a> to know how to process.<br class="xooki-br"/><br class="xooki-br"/><h3>12. Tag the svn repository</h3>
+As soon as you are happy with the artifacts to be released, it is time to tag the svn repo
+<pre>
+svn copy <a href="https://svn.apache.org/repos/asf/ant/ivy/core/branches/2.0.0-beta1">https://svn.apache.org/repos/asf/ant/ivy/core/branches/2.0.0-beta1</a> \<br class="xooki-br"/>           <a href="https://svn.apache.org/repos/asf/ant/ivy/core/tags/2.0.0-beta1">https://svn.apache.org/repos/asf/ant/ivy/core/tags/2.0.0-beta1</a> \<br class="xooki-br"/>      -m "Tag release 2.0.0-beta1."
+</pre>
+
+And don't forget to set the svn:external on doc/xooki to a fixed revision. Edit the svn:external property on the folder doc/xooki in the tag and set it to the revision of the commit of the tag. It should look like:
+<pre>
+xooki -r790212 <a href="https://svn.apache.org/repos/asf/ant/ivy/site/xooki/">https://svn.apache.org/repos/asf/ant/ivy/site/xooki/</a>
+</pre>
+
+And commit that modification.<br class="xooki-br"/><br class="xooki-br"/><h3>13. Call for a vote to approve the release</h3>
+Cast a vote to approve the release on the dev@ant.apache.org mailing list.<br class="xooki-br"/><br class="xooki-br"/>Here is an example:
+<pre>
+Subject: [VOTE] Ivy ${version} Release<br class="xooki-br"/><br class="xooki-br"/>I have built a release candidate for Ivy ${version}<br class="xooki-br"/><br class="xooki-br"/>You can download it from this URL: ${url}<br class="xooki-br"/><br class="xooki-br"/>Do you vote for the release of these binaries?<br class="xooki-br"/><br class="xooki-br"/>[ ] Yes<br class="xooki-br"/>[ ] No<br class="xooki-br"/><br class="xooki-br"/>Regards,<br class="xooki-br"/><br class="xooki-br"/>${me}, Ivy ${version} release manager
+</pre>
+<h3>14. Upload to public repository</h3>
+If the release is approved, it's now time to make it public by uploading it to the public Apache distrib repository (i.e. /www/www.apache.org/dist/ant/ivy/[version] on people.a.o).<br class="xooki-br"/><br class="xooki-br"/>Copy also the staging maven 2 repository to apache maven 2 rsync repo:<br class="xooki-br"/>/www/people.apache.org/repo/m2-ibiblio-rsync-repository<br class="xooki-br"/><br class="xooki-br"/><h3>15. Update the web site</h3>
+Add a link to the released version documentation in the web site. <br class="xooki-br"/><br class="xooki-br"/>To do so, you need to:<br class="xooki-br"/><ol>
+<li>add a svn externals reference to the documentation</li>
+edit the svn properties of site/history, and in the svn:externals property, add a line like this one:
+<pre>
+2.0.0-beta1 <a href="https://svn.apache.org/repos/asf/ant/ivy/core/branches/2.0.0-beta1/doc">https://svn.apache.org/repos/asf/ant/ivy/core/branches/2.0.0-beta1/doc</a>
+</pre>
+You should also change the latest-milestone external link.<br class="xooki-br"/><br class="xooki-br"/>You can use "svn propedit svn:externals path/to/history" to do so.<br class="xooki-br"/><br class="xooki-br"/>Once you've changed the property, use "svn up" to checkout the proper documentation.
+<li>edit the toc.json file in the site component of Ivy</li>
+and add something like that:
+<pre>
+{<br class="xooki-br"/>   "title":"2.0.0-beta1",<br class="xooki-br"/>   "url":"<a href="http://ant.apache.org/ivy/history/2.0.0-beta1/index.html">http://ant.apache.org/ivy/history/2.0.0-beta1/index.html</a>"<br class="xooki-br"/>}
+</pre>
+You can also edit the title of the main documentation node pointing to latest-milestone / latest-release if necessary.<br class="xooki-br"/>
+<li>Now generate the part of the site for the new version</li>
+<pre>
+ant generate-history-ivy -Dhistory.version=2.0.0-beta1
+</pre>
+</ol>
+
+Then you can update the release notes page of the imported documentation if necessary, to include the announcement for example.<br class="xooki-br"/><br class="xooki-br"/>It's time to update the download image used on the home page and the download page. Use site/images/ivy-dl.xcf as a basis if you have <a href="http://www.gimp.org/">gimp</a> installed. Then you can update the home page to refer to this image, and add a news item announcing the new version. Update also the download page with the new image and update the links to the download location (using a search/replace on the html source is recommended for this).<br class="xooki-br"/><br class="xooki-br"/>All site editing being done, commit your changes.<br class="xooki-br"/><br class="xooki-br"/>And now let's generate the site and deploy it:<br class="xooki-br"/><ol>
+    <li>generate the part of the site for the new version:</li>
+<pre>
+ant generate-history-ivy -Dhistory.version=2.0.0-beta1
+</pre>
+<u>WARNING:</u> that target is modifiying the toc.json in the imported branch so that the generated html have a proper version declared in the toc. You should not commit that change. Once the site has been generated, you may want to revert the changes so you won't commit it by mistake. (TODO: process to improve so we shouldn't worry).<br class="xooki-br"/>    <li>generate the website with the new toc:</li>
+<pre>
+ant /all generate-site-ivy
+</pre>
+    <li>you should verify that the site generated in target is OK. And once your happy with it, commit the changes in target (some svn add might be needed !)</li>
+    <li>deploy the website: go on people.apache.org and <tt>svn up /www/ant.apache.org/ivy/</tt></li>
+</ol>
+
+<h3>16. Deploy the Eclipse updatesite</h3>
+
+If the Eclipse update site has already been prepared to include that new Ivy release, it is now needed to be deployed. Then follow the deployment instruction on <a href="updatesite.html">that page</a>.<br class="xooki-br"/><br class="xooki-br"/><h3>17. Announce</h3>
+Announce the release on the dev@ant.a.o, ivy-user@ant.a.o, user@ant.apache.org and announce@apache.org mailing lists.<br class="xooki-br"/>You can also announce the release on popular web sites, like freshmeat.net (xavier is the owner of the Ivy project on freshmeat), javalobby.org, theserverside.com, dzone.com, ...<br class="xooki-br"/><h3>16. Update this doc</h3>
+If you feel like anything is missing or misleading in this release doc, update it as soon as you encounter the problem.<br class="xooki-br"/><h3>17. Merge your modifications back to the trunk if necessary.</h3>
+Modifications on the template files do not need to be merged, but if you had troubles during your release you may want to merge your fixes back to the trunk.<br class="xooki-br"/><h3>18. Prepare next release</h3>
+Update the file version.properties with the version of the next release so that anyone building from the trunk will obtain jar with the correct version number.<br class="xooki-br"/><br class="xooki-br"/>Release the version in <a href="https://issues.apache.org/jira/browse/IVY">jira</a>, and create a new unreleased version for the next planned version.
+ 		</div><!-- main -->
+		</td>
+	</tr>
+</table>
+
+<table id="footer-menu" summary="Navigation elements." border="0"
+	cellpadding="0" cellspacing="0" width="100%">
+	<tr>
+		<td align="center" valign="middle">
+		<div class="primary-links">:: 
+			<a href="../index.html">Home</a> ::
+			<a href="../download.html">Download</a> ::
+			<a href="../history/latest-milestone/index.html">Documentation</a> ::
+			<a href="../get-involved.html">Get Involved</a> ::
+			<a href="../search.html">Search</a> ::
+		</div>
+		</td>
+	</tr>
+</table>
+
+
+
+<div id="footer-message"></div>
+
+
+</div><!-- body -->
+</body>
+</html>

Added: ant/ivy/site/target/history/2.2.0/dev/updatesite.html
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/dev/updatesite.html?rev=1005260&view=auto
==============================================================================
--- ant/ivy/site/target/history/2.2.0/dev/updatesite.html (added)
+++ ant/ivy/site/target/history/2.2.0/dev/updatesite.html Wed Oct  6 21:25:29 2010
@@ -0,0 +1,185 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one
+   or more contributor license agreements.  See the NOTICE file
+   distributed with this work for additional information
+   regarding copyright ownership.  The ASF licenses this file
+   to you under the Apache License, Version 2.0 (the
+   "License"); you may not use this file except in compliance
+   with the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing,
+   software distributed under the License is distributed on an
+   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+   KIND, either express or implied.  See the License for the
+   specific language governing permissions and limitations
+   under the License.    
+-->
+<html>
+<head>
+	<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">
+	<script type="text/javascript">var xookiConfig = {level: 1};</script>	
+	
+
+<title>Updating the updatesite | Apache Ivy</title>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+  <link rel="stylesheet" type="text/css" href="../style/style.css" />
+  <script src="../js/jquery.pack.js" type="text/javascript"></script>
+  <script src="../js/jquery.treeview.js" type="text/javascript"></script>
+  <script type="text/javascript">
+  $(document).ready(function(){$("#treemenu").Treeview({speed: "fast",store: true});});
+  </script>
+
+<script language="javascript" type="text/javascript">xooki = {u: function(url) {return "../xooki/"+url;}};</script>
+</head>
+<body>
+
+<div id="body">
+<table id="header" summary="Navigation elements." border="0"
+	cellpadding="0" cellspacing="0" width="100%">
+	<tr>
+		<td id="home" width="30%"><a href="http://ant.apache.org/"
+			title="Apache Ant"><img src="../images/ant-group-logo.gif" alt="Apache Ant"
+			border="0" /></a></td>
+
+		<td class="product" width="70%" align="right" valign="middle"><img
+			src="../images/logo.png" alt="ivy" border="0" /></td>
+	</tr>
+</table>
+
+<table id="top-menu" summary="Navigation elements." border="0"
+	cellpadding="0" cellspacing="0" width="100%">
+	<tr>
+		<td>
+
+        <div style="float:right;margin: 0 10px;">
+        <!-- Google CSE Search Box Begins -->
+  <form id="searchbox_014292259695392975429:5y6qypnrni8" action="http://ant.apache.org/ivy/search.html">
+    <input type="hidden" name="cx" value="014292259695392975429:5y6qypnrni8" />
+    <input type="hidden" name="cof" value="FORID:11" />
+    <input name="q" type="text" size="30" />
+    <input type="submit" name="sa" value="Search" />
+  </form>
+  <script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=searchbox_014292259695392975429%3A5y6qypnrni8"></script>
+<!-- Google CSE Search Box Ends -->
+        </div>
+
+		<div id="navcontainer">
+		<a href="http://ant.apache.org/">Apache Ant</a> &gt; <a href="http://ant.apache.org/ivy/">Ivy</a> &gt; <a href="http://ant.apache.org/ivy/history.html">History</a> &gt; <span class="breadCrumb"><a href="../index.html" >Documentation (2.2.0)</a> &gt; <a href="../dev.html" >Developer doc</a> &gt; <a href="../dev/updatesite.html" class="current">Updating the updatesite</a></span>
+		</div>
+		</td>
+	</tr>
+
+</table>
+
+<table id="content" border="0" cellpadding="0" cellspacing="0"
+	width="100%">
+	<tr>
+		<td id="sidebar-left">
+		<div class="block block-book" id="block-book-0">
+		<h2>Ivy</h2>
+
+		<div class="content"><ul id="treemenu" class="treeview"><li id="xooki-index" class="submenu"><a href="../index.html" >Documentation (2.2.0)</a><ul class="open"><li id="xooki-release-notes"><a href="../release-notes.html" >Release Notes</a></li><li id="xooki-tutorial" class="submenu"><a href="../tutorial.html" >Tutorials</a><ul class="closed"><li id="xooki-tutorial/start"><a href="../tutorial/start.html" >Quick Start</a></li><li id="xooki-tutorial/defaultconf"><a href="../tutorial/defaultconf.html" >Adjusting default settings</a></li><li id="xooki-tutorial/multiple"><a href="../tutorial/multiple.html" >Multiple Resolvers</a></li><li id="xooki-tutorial/dual"><a href="../tutorial/dual.html" >Dual Resolver</a></li><li id="xooki-tutorial/dependence"><a href="../tutorial/dependence.html" >Project dependencies</a></li><li id="xooki-tutorial/multiproject"><a href="../tutorial/multiproject.html" >Using Ivy in multiple projects environment</a></li><li id="xooki-tutorial/conf"><a hre
 f="../tutorial/conf.html" >Using Ivy Module Configurations</a></li><li id="xooki-tutorial/build-repository" class="submenu"><a href="../tutorial/build-repository.html" >Building a repository</a><ul class="closed"><li id="xooki-tutorial/build-repository/basic"><a href="../tutorial/build-repository/basic.html" >Basic repository copy</a></li><li id="xooki-tutorial/build-repository/advanced"><a href="../tutorial/build-repository/advanced.html" >Using namespaces</a></li></ul></li><li id="xooki-moreexamples"><a href="../moreexamples.html" >More examples</a></li></ul></li><li id="xooki-reference" class="submenu"><a href="../reference.html" >Reference</a><ul class="closed"><li id="xooki-intro" class="submenu">Introduction<ul class="closed"><li id="xooki-terminology"><a href="../terminology.html" >Terminology</a></li><li id="xooki-concept"><a href="../concept.html" >Main Concepts</a></li><li id="xooki-textual"><a href="../textual.html" >Text Conventions</a></li><li id="xooki-principl
 e"><a href="../principle.html" >How does it work ?</a></li><li id="xooki-bestpractices"><a href="../bestpractices.html" >Best practices</a></li><li id="xooki-install"><a href="../install.html" >Installation</a></li></ul></li><li id="xooki-settings" class="submenu"><a href="../settings.html" >Settings Files</a><ul class="closed"><li id="xooki-settings/property"><a href="../settings/property.html" >property</a></li><li id="xooki-settings/properties"><a href="../settings/properties.html" >properties</a></li><li id="xooki-settings/settings"><a href="../settings/settings.html" >settings</a></li><li id="xooki-settings/include"><a href="../settings/include.html" >include</a></li><li id="xooki-settings/classpath"><a href="../settings/classpath.html" >classpath</a></li><li id="xooki-settings/typedef"><a href="../settings/typedef.html" >typedef</a></li><li id="xooki-settings/credentials"><a href="../settings/credentials.html" >credentials</a></li><li id="xooki-settings/signers"><a hre
 f="../settings/signers.html" >signers</a></li><li id="xooki-settings/lock-strategies"><a href="../settings/lock-strategies.html" >lock-strategies</a></li><li id="xooki-settings/caches" class="submenu"><a href="../settings/caches.html" >caches</a><ul class="closed"><li id="xooki-settings/caches/cache" class="submenu"><a href="../settings/caches/cache.html" >cache</a><ul class="closed"><li id="xooki-settings/caches/ttl"><a href="../settings/caches/ttl.html" >ttl</a></li></ul></li></ul></li><li id="xooki-settings/latest-strategies"><a href="../settings/latest-strategies.html" >latest-strategies</a></li><li id="xooki-settings/parsers"><a href="../settings/parsers.html" >parsers</a></li><li id="xooki-settings/namespaces" class="submenu"><a href="../settings/namespaces.html" >namespaces</a><ul class="closed"><li id="xooki-settings/namespace" class="submenu"><a href="../settings/namespace.html" >namespace</a><ul class="closed"><li id="xooki-settings/namespace/rule" class="submenu">
 <a href="../settings/namespace/rule.html" >rule</a><ul class="closed"><li id="xooki-settings/namespace/fromtosystem" class="submenu"><a href="../settings/namespace/fromtosystem.html" >fromsystem / tosystem</a><ul class="closed"><li id="xooki-settings/namespace/src"><a href="../settings/namespace/src.html" >src</a></li><li id="xooki-settings/namespace/dest"><a href="../settings/namespace/dest.html" >dest</a></li></ul></li></ul></li></ul></li></ul></li><li id="xooki-settings/macrodef" class="submenu"><a href="../settings/macrodef.html" >macrodef</a><ul class="closed"><li id="xooki-settings/macrodef/attribute"><a href="../settings/macrodef/attribute.html" >attribute</a></li></ul></li><li id="xooki-settings/resolvers" class="submenu"><a href="../settings/resolvers.html" >resolvers</a><ul class="closed"><li id="xooki-resolver/ivyrep"><a href="../resolver/ivyrep.html" >IvyRep Resolver</a></li><li id="xooki-resolver/ibiblio"><a href="../resolver/ibiblio.html" >IBiblio Resolver</a><
 /li><li id="xooki-resolver/packager"><a href="../resolver/packager.html" >Packager resolver</a></li><li id="xooki-resolver/filesystem"><a href="../resolver/filesystem.html" >File System resolver</a></li><li id="xooki-resolver/url"><a href="../resolver/url.html" >Url Resolver</a></li><li id="xooki-resolver/chain"><a href="../resolver/chain.html" >Chain Resolver</a></li><li id="xooki-resolver/dual"><a href="../resolver/dual.html" >Dual resolver</a></li><li id="xooki-resolver/sftp"><a href="../resolver/sftp.html" >sftp resolver</a></li><li id="xooki-resolver/ssh"><a href="../resolver/ssh.html" >ssh resolver</a></li><li id="xooki-resolver/vfs"><a href="../resolver/vfs.html" >vfs</a></li></ul></li><li id="xooki-settings/conflict-managers"><a href="../settings/conflict-managers.html" >conflict-managers</a></li><li id="xooki-settings/modules" class="submenu"><a href="../settings/modules.html" >modules</a><ul class="closed"><li id="xooki-settings/module"><a href="../settings/module.
 html" >module</a></li></ul></li><li id="xooki-settings/outputters"><a href="../settings/outputters.html" >outputters</a></li><li id="xooki-settings/statuses" class="submenu"><a href="../settings/statuses.html" >statuses</a><ul class="closed"><li id="xooki-settings/status"><a href="../settings/status.html" >status</a></li></ul></li><li id="xooki-settings/triggers"><a href="../settings/triggers.html" >triggers</a></li><li id="xooki-settings/version-matchers"><a href="../settings/version-matchers.html" >version-matchers</a></li></ul></li><li id="xooki-ivyfile" class="submenu"><a href="../ivyfile.html" >Ivy Files</a><ul class="closed"><li id="xooki-ivyfile/info" class="submenu"><a href="../ivyfile/info.html" >info</a><ul class="closed"><li id="xooki-ivyfile/extends"><a href="../ivyfile/extends.html" >extends</a></li><li id="xooki-ivyfile/license"><a href="../ivyfile/license.html" >license</a></li><li id="xooki-ivyfile/ivyauthor"><a href="../ivyfile/ivyauthor.html" >ivyauthor</a>
 </li><li id="xooki-ivyfile/repository"><a href="../ivyfile/repository.html" >repository</a></li><li id="xooki-ivyfile/description"><a href="../ivyfile/description.html" >description</a></li></ul></li><li id="xooki-ivyfile/configurations" class="submenu"><a href="../ivyfile/configurations.html" >configurations</a><ul class="closed"><li id="xooki-ivyfile/conf"><a href="../ivyfile/conf.html" >conf</a></li><li id="xooki-ivyfile/include"><a href="../ivyfile/include.html" >include</a></li></ul></li><li id="xooki-ivyfile/publications" class="submenu"><a href="../ivyfile/publications.html" >publications</a><ul class="closed"><li id="xooki-ivyfile/artifact" class="submenu"><a href="../ivyfile/artifact.html" >artifact</a><ul class="closed"><li id="xooki-ivyfile/artifact-conf"><a href="../ivyfile/artifact-conf.html" >conf</a></li></ul></li></ul></li><li id="xooki-ivyfile/dependencies" class="submenu"><a href="../ivyfile/dependencies.html" >dependencies</a><ul class="closed"><li id="xoo
 ki-ivyfile/dependency" class="submenu"><a href="../ivyfile/dependency.html" >dependency</a><ul class="closed"><li id="xooki-ivyfile/dependency-conf" class="submenu"><a href="../ivyfile/dependency-conf.html" >conf</a><ul class="closed"><li id="xooki-ivyfile/mapped"><a href="../ivyfile/mapped.html" >mapped</a></li></ul></li><li id="xooki-ivyfile/dependency-artifact" class="submenu"><a href="../ivyfile/dependency-artifact.html" >artifact</a><ul class="closed"><li id="xooki-ivyfile/dependency-artifact-conf"><a href="../ivyfile/dependency-artifact-conf.html" >conf</a></li></ul></li><li id="xooki-ivyfile/artifact-exclude" class="submenu"><a href="../ivyfile/artifact-exclude.html" >exclude</a><ul class="closed"><li id="xooki-ivyfile/artifact-exclude-conf"><a href="../ivyfile/artifact-exclude-conf.html" >conf</a></li></ul></li><li id="xooki-ivyfile/dependency-include" class="submenu"><a href="../ivyfile/dependency-include.html" >include</a><ul class="closed"><li id="xooki-ivyfile/de
 pendency-include-conf"><a href="../ivyfile/dependency-include-conf.html" >conf</a></li></ul></li></ul></li><li id="xooki-ivyfile/exclude"><a href="../ivyfile/exclude.html" >exclude</a></li><li id="xooki-ivyfile/override"><a href="../ivyfile/override.html" >override</a></li><li id="xooki-ivyfile/conflict"><a href="../ivyfile/conflict.html" >conflict</a></li></ul></li><li id="xooki-ivyfile/conflicts" class="submenu"><a href="../ivyfile/conflicts.html" >conflicts</a><ul class="closed"><li id="xooki-ivyfile/manager"><a href="../ivyfile/manager.html" >manager</a></li></ul></li></ul></li><li id="xooki-ant" class="submenu"><a href="../ant.html" >Ant Tasks</a><ul class="closed"><li id="xooki-use/artifactproperty"><a href="../use/artifactproperty.html" >artifactproperty</a></li><li id="xooki-use/artifactreport"><a href="../use/artifactreport.html" >artifactreport</a></li><li id="xooki-use/buildlist"><a href="../use/buildlist.html" >buildlist</a></li><li id="xooki-use/buildnumber"><a 
 href="../use/buildnumber.html" >buildnumber</a></li><li id="xooki-use/cachefileset"><a href="../use/cachefileset.html" >cachefileset</a></li><li id="xooki-use/cachepath"><a href="../use/cachepath.html" >cachepath</a></li><li id="xooki-use/cleancache"><a href="../use/cleancache.html" >cleancache</a></li><li id="xooki-use/configure"><a href="../use/configure.html" >configure</a></li><li id="xooki-use/deliver"><a href="../use/deliver.html" >deliver</a></li><li id="xooki-use/findrevision"><a href="../use/findrevision.html" >findrevision</a></li><li id="xooki-use/info"><a href="../use/info.html" >info</a></li><li id="xooki-use/install"><a href="../use/install.html" >install</a></li><li id="xooki-use/listmodules"><a href="../use/listmodules.html" >listmodules</a></li><li id="xooki-use/makepom"><a href="../use/makepom.html" >makepom</a></li><li id="xooki-use/postresolvetask"><a href="../use/postresolvetask.html" >post resolve tasks</a></li><li id="xooki-use/publish"><a href="../use
 /publish.html" >publish</a></li><li id="xooki-use/repreport"><a href="../use/repreport.html" >repreport</a></li><li id="xooki-use/resolve"><a href="../use/resolve.html" >resolve</a></li><li id="xooki-use/retrieve"><a href="../use/retrieve.html" >retrieve</a></li><li id="xooki-use/report" class="submenu"><a href="../use/report.html" >report</a><ul class="closed"><li id="xooki-yed"><a href="../yed.html" >Using yEd to layout report graphs</a></li></ul></li><li id="xooki-use/settings"><a href="../use/settings.html" >settings</a></li><li id="xooki-use/var"><a href="../use/var.html" >var</a></li></ul></li><li id="xooki-standalone"><a href="../standalone.html" >Using standalone</a></li></ul></li><li id="xooki-dev" class="submenu"><a href="../dev.html" >Developer doc</a><ul class="open"><li id="xooki-extend"><a href="../extend.html" >Extending Ivy</a></li><li id="xooki-dev/makerelease"><a href="../dev/makerelease.html" >Making a release</a></li><li id="xooki-dev/updatesite"><a href=
 "../dev/updatesite.html" class="current">Updating the updatesite</a></li></ul></li></ul></li></ul></div>
+
+		<center><iframe src="http://www.apache.org/ads/buttonbar.html"
+                         style="border-width:0;" frameborder="0" scrolling="no"
+                         width="135" height="265"></iframe>
+                </center>
+                
+		</div>
+
+		</td>
+		
+		<td valign="top">
+		<div id="main">
+
+		<h1 class="title">Updating the updatesite</h1>
+            <br class="xooki-br"/>Once a release have been build for Ivy or IvyDE, they should be pushed to the Eclipse updatesite so that Eclipse users will be able to update automatically their installed version of Ivy or IvyDE.<br class="xooki-br"/><br class="xooki-br"/>This doc is in two parts, the <a href="#setup">setup</a> of the updatesite which will be the candidate for the vote of the Ivy or IvyDE release, and the <a href="#deployment">final deployment</a> once the release is accepted.<br class="xooki-br"/><br class="xooki-br"/><u>Important note:</u> in this doc, the released version is denoted as $VERSION (and have to be replaced accordingly in every commands), but this is the OSGi one, not the usually shown one, in particular for release candidate versions. For instance an Ivy version can be <tt>2.0.0-RC1</tt> but the OSGi one, and the one to use here is <tt>2.0.0.cr1</tt>.<br class="xooki-br"/><br class="xooki-br"/><h1><a name="setup"></a>Build the updatesite</h1
 >
+
+<h2>Push the new version</h2>
+
+The update site svn location is there: <a href="https://svn.apache.org/repos/asf/ant/ivy/updatesite/trunk">https://svn.apache.org/repos/asf/ant/ivy/updatesite/trunk</a> . You will update it so it will contain the new artifacts.<br class="xooki-br"/><br class="xooki-br"/>Before installing the new version, you probably want to remove some deprecated version. For instance is the new release is a RC2, then the RC1 should be removed. But do keep old final release; some users might not want use to the exact same version of Ivy they use in Ant, which might not be the latest one. To do so just <tt>svn rm</tt> the jars, checksums and signatures of the features and plugins to remove.<br class="xooki-br"/>
+<ul><li>For an <u>Ivy</u> release:<br class="xooki-br"/>As you have a build jar for Ivy, just do:
+<pre>ant install-ivy -Divy.jar=...../path/to/ivy.jar</pre>
+<li>
+For an <u>IvyDE</u> release:<br class="xooki-br"/>The zip distribution needs to be unpacked into the updatesite directory:
+<pre>ant install-ivyde -Divyde.zip=...../path/to/org.apache.ivyde.feature-${VERSION}.zip</pre>
+</li>
+</ul>
+
+<h2>Prepare the update site</h2>
+
+The update site is optimized: the metadata of the features are aggregated into the digest.zip, and the jar of the plugins are compressed with a better algorithm.<br class="xooki-br"/><br class="xooki-br"/><b>Important note:</b> the following optimize tasks need to be run in <b>java 5 jre</b>. The pack200 didn't existed before java 5 and the jar compressed with java 6 can not be uncompressed by some java 5 jre (at least the IBM one).<br class="xooki-br"/><br class="xooki-br"/>To accomplish this task, just run at the root of your working copy of the updatesite:
+<ul>
+<li>For an <u>Ivy</u> release:
+<pre>
+ant optimize-ivy
+</pre></li>
+<li>
+For an <u>IvyDE</u> release:
+<pre>
+ant optimize-ivyde
+</pre></li>
+</ul>
+
+The binary files then need to be signed and their checksum computed. For the checksums, run:
+<pre>ant checksum</pre>
+And sign the binaries:<br class="xooki-br"/>
+<ul>
+<li>For an <u>Ivy</u> release:
+<pre>./signIvyArtifacts.sh</pre>
+</li>
+<li>
+For an <u>IvyDE</u> release:
+<pre>./signIvyDEArtifacts.sh</pre>
+</li>
+</ul>
+
+<b>Note:</b> these previous targets may optimize, checksum and sign already released artifacts. Just so a <tt>svn status</tt> to check the modified artifacts; the only modified files should be the digest.zip (with its signature and checksum) and the site.xml; then there should be the added files of the release. Then do some <tt>svn revert <i>file</i></tt> to revert the unexpected changes.<br class="xooki-br"/><br class="xooki-br"/>And finally commit your changes.<br class="xooki-br"/><br class="xooki-br"/>As soon as you ar happy with the committed artifacts, we can tag the updatesite:
+<pre>
+svn cp <a href="https://svn.apache.org/repos/asf/ant/ivy/updatesite/trunk">https://svn.apache.org/repos/asf/ant/ivy/updatesite/trunk</a> <a href="https://svn.apache.org/repos/asf/ant/ivy/updatesite/tags/$TAGNAME">https://svn.apache.org/repos/asf/ant/ivy/updatesite/tags/$TAGNAME</a>
+</pre>
+with <tt>$TAGNAME</tt> the name of the release, so it would be either <tt>ivy-$VERSION</tt> or <tt>ivyde-$VERSION</tt>.<br class="xooki-br"/><br class="xooki-br"/><h2>Test the updatesite</h2>
+
+The updatesite is ready to be tested. You can deploy it where ever you want with the command:
+<pre>svn export <a href="https://svn.apache.org/repos/asf/ant/ivy/updatesite/trunk/dist">https://svn.apache.org/repos/asf/ant/ivy/updatesite/trunk/dist</a> updatesite
+</pre>
+
+For both local and remote testing, as the new jars are not yet deployed on Apache mirrors, the updatesite mirroring have to be disable.<br class="xooki-br"/>Basically it is just about modifying the site.xml and remove the reference to the eclipse-update--xml files: remove the attribute <tt>mirrorsURL</tt>.<br class="xooki-br"/><br class="xooki-br"/>To let the developper community test the updatesite, you can setup a staging updatesite in your public_html directory on people.apache.org. So if you deploy it on people.apache.org, in the directory ~/public_html/staging, then the developpers should setup the updatesite with the URL <a href="http://people.apache.org/~LOGIN/staging/updatesite">http://people.apache.org/~LOGIN/staging/updatesite</a> .<br class="xooki-br"/><br class="xooki-br"/><h1><a name="deployment"></a>Deployment of a release</h1>
+
+Then backup and deploy. On people.apache.org:
+<pre>
+cd /www/www.apache.org/dist/ant/ivyde/<br class="xooki-br"/>mv updatesite ~/updatesite.backup<br class="xooki-br"/>svn export <a href="https://svn.apache.org/repos/asf/ant/ivy/updatesite/tags/$TAGNAME/dist">https://svn.apache.org/repos/asf/ant/ivy/updatesite/tags/$TAGNAME/dist</a> updatesite
+</pre>
+
+
+ 		</div><!-- main -->
+		</td>
+	</tr>
+</table>
+
+<table id="footer-menu" summary="Navigation elements." border="0"
+	cellpadding="0" cellspacing="0" width="100%">
+	<tr>
+		<td align="center" valign="middle">
+		<div class="primary-links">:: 
+			<a href="../index.html">Home</a> ::
+			<a href="../download.html">Download</a> ::
+			<a href="../history/latest-milestone/index.html">Documentation</a> ::
+			<a href="../get-involved.html">Get Involved</a> ::
+			<a href="../search.html">Search</a> ::
+		</div>
+		</td>
+	</tr>
+</table>
+
+
+
+<div id="footer-message"></div>
+
+
+</div><!-- body -->
+</body>
+</html>

Added: ant/ivy/site/target/history/2.2.0/extend.html
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/extend.html?rev=1005260&view=auto
==============================================================================
--- ant/ivy/site/target/history/2.2.0/extend.html (added)
+++ ant/ivy/site/target/history/2.2.0/extend.html Wed Oct  6 21:25:29 2010
@@ -0,0 +1,140 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one
+   or more contributor license agreements.  See the NOTICE file
+   distributed with this work for additional information
+   regarding copyright ownership.  The ASF licenses this file
+   to you under the Apache License, Version 2.0 (the
+   "License"); you may not use this file except in compliance
+   with the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing,
+   software distributed under the License is distributed on an
+   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+   KIND, either express or implied.  See the License for the
+   specific language governing permissions and limitations
+   under the License.    
+-->
+<html>
+<head>
+	<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">
+	<script type="text/javascript">var xookiConfig = {level: 0};</script>	
+	
+
+<title>Extending Ivy | Apache Ivy</title>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+  <link rel="stylesheet" type="text/css" href="style/style.css" />
+  <script src="js/jquery.pack.js" type="text/javascript"></script>
+  <script src="js/jquery.treeview.js" type="text/javascript"></script>
+  <script type="text/javascript">
+  $(document).ready(function(){$("#treemenu").Treeview({speed: "fast",store: true});});
+  </script>
+
+<script language="javascript" type="text/javascript">xooki = {u: function(url) {return "xooki/"+url;}};</script>
+</head>
+<body>
+
+<div id="body">
+<table id="header" summary="Navigation elements." border="0"
+	cellpadding="0" cellspacing="0" width="100%">
+	<tr>
+		<td id="home" width="30%"><a href="http://ant.apache.org/"
+			title="Apache Ant"><img src="images/ant-group-logo.gif" alt="Apache Ant"
+			border="0" /></a></td>
+
+		<td class="product" width="70%" align="right" valign="middle"><img
+			src="images/logo.png" alt="ivy" border="0" /></td>
+	</tr>
+</table>
+
+<table id="top-menu" summary="Navigation elements." border="0"
+	cellpadding="0" cellspacing="0" width="100%">
+	<tr>
+		<td>
+
+        <div style="float:right;margin: 0 10px;">
+        <!-- Google CSE Search Box Begins -->
+  <form id="searchbox_014292259695392975429:5y6qypnrni8" action="http://ant.apache.org/ivy/search.html">
+    <input type="hidden" name="cx" value="014292259695392975429:5y6qypnrni8" />
+    <input type="hidden" name="cof" value="FORID:11" />
+    <input name="q" type="text" size="30" />
+    <input type="submit" name="sa" value="Search" />
+  </form>
+  <script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=searchbox_014292259695392975429%3A5y6qypnrni8"></script>
+<!-- Google CSE Search Box Ends -->
+        </div>
+
+		<div id="navcontainer">
+		<a href="http://ant.apache.org/">Apache Ant</a> &gt; <a href="http://ant.apache.org/ivy/">Ivy</a> &gt; <a href="http://ant.apache.org/ivy/history.html">History</a> &gt; <span class="breadCrumb"><a href="index.html" >Documentation (2.2.0)</a> &gt; <a href="dev.html" >Developer doc</a> &gt; <a href="extend.html" class="current">Extending Ivy</a></span>
+		</div>
+		</td>
+	</tr>
+
+</table>
+
+<table id="content" border="0" cellpadding="0" cellspacing="0"
+	width="100%">
+	<tr>
+		<td id="sidebar-left">
+		<div class="block block-book" id="block-book-0">
+		<h2>Ivy</h2>
+
+		<div class="content"><ul id="treemenu" class="treeview"><li id="xooki-index" class="submenu"><a href="index.html" >Documentation (2.2.0)</a><ul class="open"><li id="xooki-release-notes"><a href="release-notes.html" >Release Notes</a></li><li id="xooki-tutorial" class="submenu"><a href="tutorial.html" >Tutorials</a><ul class="closed"><li id="xooki-tutorial/start"><a href="tutorial/start.html" >Quick Start</a></li><li id="xooki-tutorial/defaultconf"><a href="tutorial/defaultconf.html" >Adjusting default settings</a></li><li id="xooki-tutorial/multiple"><a href="tutorial/multiple.html" >Multiple Resolvers</a></li><li id="xooki-tutorial/dual"><a href="tutorial/dual.html" >Dual Resolver</a></li><li id="xooki-tutorial/dependence"><a href="tutorial/dependence.html" >Project dependencies</a></li><li id="xooki-tutorial/multiproject"><a href="tutorial/multiproject.html" >Using Ivy in multiple projects environment</a></li><li id="xooki-tutorial/conf"><a href="tutorial/conf.html" >Usi
 ng Ivy Module Configurations</a></li><li id="xooki-tutorial/build-repository" class="submenu"><a href="tutorial/build-repository.html" >Building a repository</a><ul class="closed"><li id="xooki-tutorial/build-repository/basic"><a href="tutorial/build-repository/basic.html" >Basic repository copy</a></li><li id="xooki-tutorial/build-repository/advanced"><a href="tutorial/build-repository/advanced.html" >Using namespaces</a></li></ul></li><li id="xooki-moreexamples"><a href="moreexamples.html" >More examples</a></li></ul></li><li id="xooki-reference" class="submenu"><a href="reference.html" >Reference</a><ul class="closed"><li id="xooki-intro" class="submenu">Introduction<ul class="closed"><li id="xooki-terminology"><a href="terminology.html" >Terminology</a></li><li id="xooki-concept"><a href="concept.html" >Main Concepts</a></li><li id="xooki-textual"><a href="textual.html" >Text Conventions</a></li><li id="xooki-principle"><a href="principle.html" >How does it work ?</a></l
 i><li id="xooki-bestpractices"><a href="bestpractices.html" >Best practices</a></li><li id="xooki-install"><a href="install.html" >Installation</a></li></ul></li><li id="xooki-settings" class="submenu"><a href="settings.html" >Settings Files</a><ul class="closed"><li id="xooki-settings/property"><a href="settings/property.html" >property</a></li><li id="xooki-settings/properties"><a href="settings/properties.html" >properties</a></li><li id="xooki-settings/settings"><a href="settings/settings.html" >settings</a></li><li id="xooki-settings/include"><a href="settings/include.html" >include</a></li><li id="xooki-settings/classpath"><a href="settings/classpath.html" >classpath</a></li><li id="xooki-settings/typedef"><a href="settings/typedef.html" >typedef</a></li><li id="xooki-settings/credentials"><a href="settings/credentials.html" >credentials</a></li><li id="xooki-settings/signers"><a href="settings/signers.html" >signers</a></li><li id="xooki-settings/lock-strategies"><a h
 ref="settings/lock-strategies.html" >lock-strategies</a></li><li id="xooki-settings/caches" class="submenu"><a href="settings/caches.html" >caches</a><ul class="closed"><li id="xooki-settings/caches/cache" class="submenu"><a href="settings/caches/cache.html" >cache</a><ul class="closed"><li id="xooki-settings/caches/ttl"><a href="settings/caches/ttl.html" >ttl</a></li></ul></li></ul></li><li id="xooki-settings/latest-strategies"><a href="settings/latest-strategies.html" >latest-strategies</a></li><li id="xooki-settings/parsers"><a href="settings/parsers.html" >parsers</a></li><li id="xooki-settings/namespaces" class="submenu"><a href="settings/namespaces.html" >namespaces</a><ul class="closed"><li id="xooki-settings/namespace" class="submenu"><a href="settings/namespace.html" >namespace</a><ul class="closed"><li id="xooki-settings/namespace/rule" class="submenu"><a href="settings/namespace/rule.html" >rule</a><ul class="closed"><li id="xooki-settings/namespace/fromtosystem" 
 class="submenu"><a href="settings/namespace/fromtosystem.html" >fromsystem / tosystem</a><ul class="closed"><li id="xooki-settings/namespace/src"><a href="settings/namespace/src.html" >src</a></li><li id="xooki-settings/namespace/dest"><a href="settings/namespace/dest.html" >dest</a></li></ul></li></ul></li></ul></li></ul></li><li id="xooki-settings/macrodef" class="submenu"><a href="settings/macrodef.html" >macrodef</a><ul class="closed"><li id="xooki-settings/macrodef/attribute"><a href="settings/macrodef/attribute.html" >attribute</a></li></ul></li><li id="xooki-settings/resolvers" class="submenu"><a href="settings/resolvers.html" >resolvers</a><ul class="closed"><li id="xooki-resolver/ivyrep"><a href="resolver/ivyrep.html" >IvyRep Resolver</a></li><li id="xooki-resolver/ibiblio"><a href="resolver/ibiblio.html" >IBiblio Resolver</a></li><li id="xooki-resolver/packager"><a href="resolver/packager.html" >Packager resolver</a></li><li id="xooki-resolver/filesystem"><a href="
 resolver/filesystem.html" >File System resolver</a></li><li id="xooki-resolver/url"><a href="resolver/url.html" >Url Resolver</a></li><li id="xooki-resolver/chain"><a href="resolver/chain.html" >Chain Resolver</a></li><li id="xooki-resolver/dual"><a href="resolver/dual.html" >Dual resolver</a></li><li id="xooki-resolver/sftp"><a href="resolver/sftp.html" >sftp resolver</a></li><li id="xooki-resolver/ssh"><a href="resolver/ssh.html" >ssh resolver</a></li><li id="xooki-resolver/vfs"><a href="resolver/vfs.html" >vfs</a></li></ul></li><li id="xooki-settings/conflict-managers"><a href="settings/conflict-managers.html" >conflict-managers</a></li><li id="xooki-settings/modules" class="submenu"><a href="settings/modules.html" >modules</a><ul class="closed"><li id="xooki-settings/module"><a href="settings/module.html" >module</a></li></ul></li><li id="xooki-settings/outputters"><a href="settings/outputters.html" >outputters</a></li><li id="xooki-settings/statuses" class="submenu"><a 
 href="settings/statuses.html" >statuses</a><ul class="closed"><li id="xooki-settings/status"><a href="settings/status.html" >status</a></li></ul></li><li id="xooki-settings/triggers"><a href="settings/triggers.html" >triggers</a></li><li id="xooki-settings/version-matchers"><a href="settings/version-matchers.html" >version-matchers</a></li></ul></li><li id="xooki-ivyfile" class="submenu"><a href="ivyfile.html" >Ivy Files</a><ul class="closed"><li id="xooki-ivyfile/info" class="submenu"><a href="ivyfile/info.html" >info</a><ul class="closed"><li id="xooki-ivyfile/extends"><a href="ivyfile/extends.html" >extends</a></li><li id="xooki-ivyfile/license"><a href="ivyfile/license.html" >license</a></li><li id="xooki-ivyfile/ivyauthor"><a href="ivyfile/ivyauthor.html" >ivyauthor</a></li><li id="xooki-ivyfile/repository"><a href="ivyfile/repository.html" >repository</a></li><li id="xooki-ivyfile/description"><a href="ivyfile/description.html" >description</a></li></ul></li><li id="xo
 oki-ivyfile/configurations" class="submenu"><a href="ivyfile/configurations.html" >configurations</a><ul class="closed"><li id="xooki-ivyfile/conf"><a href="ivyfile/conf.html" >conf</a></li><li id="xooki-ivyfile/include"><a href="ivyfile/include.html" >include</a></li></ul></li><li id="xooki-ivyfile/publications" class="submenu"><a href="ivyfile/publications.html" >publications</a><ul class="closed"><li id="xooki-ivyfile/artifact" class="submenu"><a href="ivyfile/artifact.html" >artifact</a><ul class="closed"><li id="xooki-ivyfile/artifact-conf"><a href="ivyfile/artifact-conf.html" >conf</a></li></ul></li></ul></li><li id="xooki-ivyfile/dependencies" class="submenu"><a href="ivyfile/dependencies.html" >dependencies</a><ul class="closed"><li id="xooki-ivyfile/dependency" class="submenu"><a href="ivyfile/dependency.html" >dependency</a><ul class="closed"><li id="xooki-ivyfile/dependency-conf" class="submenu"><a href="ivyfile/dependency-conf.html" >conf</a><ul class="closed"><l
 i id="xooki-ivyfile/mapped"><a href="ivyfile/mapped.html" >mapped</a></li></ul></li><li id="xooki-ivyfile/dependency-artifact" class="submenu"><a href="ivyfile/dependency-artifact.html" >artifact</a><ul class="closed"><li id="xooki-ivyfile/dependency-artifact-conf"><a href="ivyfile/dependency-artifact-conf.html" >conf</a></li></ul></li><li id="xooki-ivyfile/artifact-exclude" class="submenu"><a href="ivyfile/artifact-exclude.html" >exclude</a><ul class="closed"><li id="xooki-ivyfile/artifact-exclude-conf"><a href="ivyfile/artifact-exclude-conf.html" >conf</a></li></ul></li><li id="xooki-ivyfile/dependency-include" class="submenu"><a href="ivyfile/dependency-include.html" >include</a><ul class="closed"><li id="xooki-ivyfile/dependency-include-conf"><a href="ivyfile/dependency-include-conf.html" >conf</a></li></ul></li></ul></li><li id="xooki-ivyfile/exclude"><a href="ivyfile/exclude.html" >exclude</a></li><li id="xooki-ivyfile/override"><a href="ivyfile/override.html" >overrid
 e</a></li><li id="xooki-ivyfile/conflict"><a href="ivyfile/conflict.html" >conflict</a></li></ul></li><li id="xooki-ivyfile/conflicts" class="submenu"><a href="ivyfile/conflicts.html" >conflicts</a><ul class="closed"><li id="xooki-ivyfile/manager"><a href="ivyfile/manager.html" >manager</a></li></ul></li></ul></li><li id="xooki-ant" class="submenu"><a href="ant.html" >Ant Tasks</a><ul class="closed"><li id="xooki-use/artifactproperty"><a href="use/artifactproperty.html" >artifactproperty</a></li><li id="xooki-use/artifactreport"><a href="use/artifactreport.html" >artifactreport</a></li><li id="xooki-use/buildlist"><a href="use/buildlist.html" >buildlist</a></li><li id="xooki-use/buildnumber"><a href="use/buildnumber.html" >buildnumber</a></li><li id="xooki-use/cachefileset"><a href="use/cachefileset.html" >cachefileset</a></li><li id="xooki-use/cachepath"><a href="use/cachepath.html" >cachepath</a></li><li id="xooki-use/cleancache"><a href="use/cleancache.html" >cleancache</
 a></li><li id="xooki-use/configure"><a href="use/configure.html" >configure</a></li><li id="xooki-use/deliver"><a href="use/deliver.html" >deliver</a></li><li id="xooki-use/findrevision"><a href="use/findrevision.html" >findrevision</a></li><li id="xooki-use/info"><a href="use/info.html" >info</a></li><li id="xooki-use/install"><a href="use/install.html" >install</a></li><li id="xooki-use/listmodules"><a href="use/listmodules.html" >listmodules</a></li><li id="xooki-use/makepom"><a href="use/makepom.html" >makepom</a></li><li id="xooki-use/postresolvetask"><a href="use/postresolvetask.html" >post resolve tasks</a></li><li id="xooki-use/publish"><a href="use/publish.html" >publish</a></li><li id="xooki-use/repreport"><a href="use/repreport.html" >repreport</a></li><li id="xooki-use/resolve"><a href="use/resolve.html" >resolve</a></li><li id="xooki-use/retrieve"><a href="use/retrieve.html" >retrieve</a></li><li id="xooki-use/report" class="submenu"><a href="use/report.html" >r
 eport</a><ul class="closed"><li id="xooki-yed"><a href="yed.html" >Using yEd to layout report graphs</a></li></ul></li><li id="xooki-use/settings"><a href="use/settings.html" >settings</a></li><li id="xooki-use/var"><a href="use/var.html" >var</a></li></ul></li><li id="xooki-standalone"><a href="standalone.html" >Using standalone</a></li></ul></li><li id="xooki-dev" class="submenu"><a href="dev.html" >Developer doc</a><ul class="open"><li id="xooki-extend"><a href="extend.html" class="current">Extending Ivy</a></li><li id="xooki-dev/makerelease"><a href="dev/makerelease.html" >Making a release</a></li><li id="xooki-dev/updatesite"><a href="dev/updatesite.html" >Updating the updatesite</a></li></ul></li></ul></li></ul></div>
+
+		<center><iframe src="http://www.apache.org/ads/buttonbar.html"
+                         style="border-width:0;" frameborder="0" scrolling="no"
+                         width="135" height="265"></iframe>
+                </center>
+                
+		</div>
+
+		</td>
+		
+		<td valign="top">
+		<div id="main">
+
+		<h1 class="title">Extending Ivy</h1>
+            <br class="xooki-br"/>Many things are configurable in Ivy, and many things are available with Ivy core. But when you want to do something not built in ivy core, you can still plug your own code.<br class="xooki-br"/><br class="xooki-br"/>Many things are pluggable in Ivy:
+<ul>
+<li>module descriptor parsers</li>
+<li>dependency resolvers</li>
+<li>lock strategies</li>
+<li>latest strategies</li>
+<li>circular dependency strategies</li>
+<li>conflict managers</li>
+<li>report outputters</li>
+<li>version matchers</li>
+<li>triggers</li>
+</ul>
+
+Before trying to implement your own, we encourage you to check if the solution to your problem cannot be addressed by existing features, or by contributed ones. Do not hesitate to ask for help on the mailing-lists.<br class="xooki-br"/><br class="xooki-br"/>If you still don't find what you need, then you'll have to develop your own plugin or find someone who could do that for you.<br class="xooki-br"/><br class="xooki-br"/>All ivy plug-ins use the same code patterns as ant specific tasks for parameters. This means that if you want to have a "myattribute" of type String, you just have to declare a method called setMyattribute(String val) on your plug-in. The same applies to child tags, you just have to follow Ant specifications.<br class="xooki-br"/><br class="xooki-br"/>All pluggable code in Ivy is located in the <a href="https://svn.apache.org/repos/asf/ant/ivy/core/trunk/src/java/org/apache/ivy/plugins">org.apache.ivy.plugins</a> package. In each package you will find an i
 nterface that you must implement to provide a new plugin. We usually also provide an abstract class easing the implementation and making your code more independent of interface changes. We heavily recommend using these abstract classes as a base class.<br class="xooki-br"/><br class="xooki-br"/>To understand how your implementation can be done, we suggest looking at existing implementations we provide, it's the best way to get started.<br class="xooki-br"/>	
+ 		</div><!-- main -->
+		</td>
+	</tr>
+</table>
+
+<table id="footer-menu" summary="Navigation elements." border="0"
+	cellpadding="0" cellspacing="0" width="100%">
+	<tr>
+		<td align="center" valign="middle">
+		<div class="primary-links">:: 
+			<a href="index.html">Home</a> ::
+			<a href="download.html">Download</a> ::
+			<a href="history/latest-milestone/index.html">Documentation</a> ::
+			<a href="get-involved.html">Get Involved</a> ::
+			<a href="search.html">Search</a> ::
+		</div>
+		</td>
+	</tr>
+</table>
+
+
+
+<div id="footer-message"></div>
+
+
+</div><!-- body -->
+</body>
+</html>

Added: ant/ivy/site/target/history/2.2.0/images/ant-group-logo.gif
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/ant-group-logo.gif?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/ant-group-logo.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/apache-incubator-logo.png
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/apache-incubator-logo.png?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/apache-incubator-logo.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/bullet.gif
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/bullet.gif?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/bullet.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/closed.gif
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/closed.gif?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/closed.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/discovery.gif
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/discovery.gif?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/discovery.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/downloaded.gif
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/downloaded.gif?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/downloaded.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/error.gif
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/error.gif?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/error.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/evicted.gif
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/evicted.gif?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/evicted.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/grippie.png
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/grippie.png?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/grippie.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/hibgraph-small.png
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/hibgraph-small.png?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/hibgraph-small.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/hibgraph.png
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/hibgraph.png?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/hibgraph.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/ivy-book.png
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/ivy-book.png?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/ivy-book.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/ivy-demo.png
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/ivy-demo.png?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/ivy-demo.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/ivy-dl-1.4.1.png
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/ivy-dl-1.4.1.png?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/ivy-dl-1.4.1.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/ivy-dl-2.0.0-alpha-1.png
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/ivy-dl-2.0.0-alpha-1.png?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/ivy-dl-2.0.0-alpha-1.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/ivy-dl.xcf
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/ivy-dl.xcf?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/ivy-dl.xcf
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/ivy-forum.png
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/ivy-forum.png?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/ivy-forum.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/ivy-lierre.png
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/ivy-lierre.png?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/ivy-lierre.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/ivy-publish-fc.odg
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/ivy-publish-fc.odg?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/ivy-publish-fc.odg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/ivy-publish-fc.png
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/ivy-publish-fc.png?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/ivy-publish-fc.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/ivy-terminology.odg
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/ivy-terminology.odg?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/ivy-terminology.odg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/ivy-terminology.png
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/ivy-terminology.png?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/ivy-terminology.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/ivyfile-small.png
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/ivyfile-small.png?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/ivyfile-small.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/logo.png
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/logo.png?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/logo.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/main-tasks.png
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/main-tasks.png?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/main-tasks.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/open.gif
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/open.gif?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/open.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/report-small.png
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/report-small.png?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/report-small.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/searched.gif
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/searched.gif?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/searched.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/xooki-edit-small.png
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/xooki-edit-small.png?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/xooki-edit-small.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/xooki-edit.png
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/xooki-edit.png?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/xooki-edit.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/xooki-toolbar.png
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/xooki-toolbar.png?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/xooki-toolbar.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/yed-step1.jpg
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/yed-step1.jpg?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/yed-step1.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/yed-step2.jpg
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/yed-step2.jpg?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/yed-step2.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/yed-step3-2.jpg
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/yed-step3-2.jpg?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/yed-step3-2.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/yed-step3.jpg
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/yed-step3.jpg?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/yed-step3.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/yed-step4.jpg
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/yed-step4.jpg?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/yed-step4.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/yed-step5.jpg
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/yed-step5.jpg?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/yed-step5.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/yed-step6.jpg
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/yed-step6.jpg?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/yed-step6.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: ant/ivy/site/target/history/2.2.0/images/yed-step7.jpg
URL: http://svn.apache.org/viewvc/ant/ivy/site/target/history/2.2.0/images/yed-step7.jpg?rev=1005260&view=auto
==============================================================================
Binary file - no diff available.

Propchange: ant/ivy/site/target/history/2.2.0/images/yed-step7.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream