commons-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From build...@apache.org
Subject svn commit: r854816 - in /websites/staging/commons/trunk/content: ./ releases/prepare.html
Date Sun, 17 Mar 2013 06:45:25 GMT
Author: buildbot
Date: Sun Mar 17 06:45:25 2013
New Revision: 854816

Log:
Staging update by buildbot for commons

Modified:
    websites/staging/commons/trunk/content/   (props changed)
    websites/staging/commons/trunk/content/releases/prepare.html

Propchange: websites/staging/commons/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Sun Mar 17 06:45:25 2013
@@ -1 +1 @@
-1457384
+1457385

Modified: websites/staging/commons/trunk/content/releases/prepare.html
==============================================================================
--- websites/staging/commons/trunk/content/releases/prepare.html (original)
+++ websites/staging/commons/trunk/content/releases/prepare.html Sun Mar 17 06:45:25 2013
@@ -421,13 +421,14 @@
 	read easily without word wrap.		
 		</p>
   </div>
-  <div class="section"><h3>Checking the commit log<a name="Checking_the_commit_log"></a></h3>
+  <div class="section"><h3>Check the commit log<a name="Check_the_commit_log"></a></h3>
 	<p>
         Different components have their own ways of creating the change log. 
         The most common, and recommended, way, is to record all significant
         changes in JIRA tickets and include entries in the Maven change-log
-        file, <tt>changes.xml</tt>.  
-        Here's a way to get the information directly from svn if no change log
+        file, <tt>changes.xml</tt>.  If your component has a change-log you
+        can skip this step.</p>  
+        <p>Here's a way to get the information directly from svn if no change log
         has been maintained for the component:
         </p>
         <p>
@@ -559,14 +560,14 @@
 	This product includes software developed by
 	The Apache Software Foundation (http://www.apache.org/).
         </pre></div>
-      <p>Verify <tt>{latest}</tt> is the current year</p>
+      <p>Verify <tt>{latest}</tt> is the current year.</p>
         <p>
         The NOTICE.txt must be distributed along with the LICENSE.txt.
         Check that the distribution build correctly adds this file
         to the distributions and that the copyright start and end dates are correct.
         </p>
     </div>
-    <div class="section"><h3>Create the Release Candidate<a name="Create_the_Release_Candidate"></a></h3>
+    <div class="section"><h3>Tag the Release Candidate<a name="Tag_the_Release_Candidate"></a></h3>
         <p>
         Once all the preparations agreed in the release plan has been completed, create a
Release Candidate. 
         Before creating the tag from which the release candidate will be generated, run the
distribution build
@@ -579,28 +580,58 @@
         and check that the javadocs  have the correct version number.  Check in all changes.
         </p>
         <p>
-        Now create the tag for the release candidate. For example (cutting the candidate
from the trunk):
-		</p>
-	<div><pre>
-	  svn update trunk
-	  svn cp trunk tags/FOO_1_2_RC1
-	  svn commit -m &quot;Tagging foo-1.2 RC1&quot; tags/FOO_1_2_RC1 </pre></div>
-        <p>
-        Note that the &quot;svn update&quot; step is necessary in order to ensure
that the directory being
-        copied does not have a mix of files at various revisions; even if the files haven't
changed
-        since the last svn update this can cause &quot;svn log -v&quot; on the new
directory to report files as
-        having been (R)eplaced.
-	</p>
-	<p>Alternatively, use &quot;svn cp URLsrc URLtag&quot;</p> 
+          Now create the tag for the release candidate.  There are two options how to do
that,
+          you can either use the Maven release plugin or create the tag manually.</p>
+      </div><div class="section"><h3>Manual Method<a name="Manual_Method"></a></h3>
+        <p>Create a clean SVN workspace for the release candidate:</p>
       <div><pre>
-        svn cp  -m &quot;Creating foo-1.2-release branch&quot; \
-            https://svn.apache.org/repos/asf/commons/proper/foo/trunk \
-            https://svn.apache.org/repos/asf/commons/proper/foo/branches/foo-1.2-release
+      svn co https://svn.apache.org/repos/asf/commons/proper/foo/trunk foo-m.n.o-RC1
       </pre></div>
-      <p>which will copy files internally within the repository without using the local
working copy: 
-      this always ensures a clean copy is made.
-    </p>
-	<p>
+
+        <p>Edit the version fields in the POMs to remove the -SNAPSHOT, for example
+        using Maven's version plugin.</p>
+      <div><pre>
+      mvn versions:set -DnewVersion=3.1 -DgenerateBackupPoms=false
+      </pre></div>
+
+        
+        <p>Edit the SCM entries in the parent POM. Note: use the final tag, without
any RC suffix.
+        Do <tt>svn diff</tt> and <tt>svn status</tt> to check that
the changes are OK.
+        These should only show changes to the POMs.</p>
+
+        <p>Create the RC tag, by copying the tag workspace to SVN:</p>
+
+      <div><pre>
+      svn copy foo-m.n.o-RC1 -m &quot;Creating foo-m.n.o-RC1 tag&quot; https://svn.apache.org/repos/asf/commons/proper/foo/tags/foo-m.n.o-RC1
+      </pre></div>
+      </div>
+
+      <div class="section"><h3>Maven Release Plugin<a name="Maven_Release_Plugin"></a></h3>
+        <p>When using the release plugin, please verify that your poms will not lose
content when they are rewritten during the
+          release process.</p>
+
+        <p>Inside the branch you are cutting the release from start with</p>
+      <div><pre>
+      mvn release:prepare -DdryRun=true
+        </pre></div>
+
+        <p>Diff the original file <tt>pom.xml</tt> with the one called
<tt>pom.xml.tag</tt> to see if the license or
+          any other info has been removed. This has been known to happen if the starting
<tt>&lt;project&gt;</tt> tag
+          is not on a single line. The only things that should be different between these
files are the <tt>&lt;version&gt;</tt>
+          and <tt>&lt;scm&gt;</tt> elements. Any other changes, you must
backport yourself to the original
+          <tt>pom.xml</tt> file and commit before proceeding with the release.</p>
+
+        <p>Remember to do <tt>mvn release:clean</tt> before you start the
real release process.
+          If everything is ok, run:</p>
+      <div><pre>  
+      mvn release:prepare
+      </pre></div>
+      </div>
+
+    
+    <div class="section"><h3>Create the Release Candidate<a name="Create_the_Release_Candidate"></a></h3>
+        
+        <p>
 	Build distributions from a fresh checkout of the RC tag.
     Build the code with the target version of Java if possible.<br />
     If the version of Maven you are using requires a more recent version of Java than the
code you are



Mime
View raw message