You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-dev@logging.apache.org by ca...@apache.org on 2007/02/27 00:14:44 UTC

svn commit: r512067 - in /logging/log4j/branches/v1_2-branch: build.properties.sample build.xml docs/HISTORY.txt src/xdocs/download.xml src/xdocs/stylesheets/compatibility.xslt

Author: carnold
Date: Mon Feb 26 15:14:43 2007
New Revision: 512067

URL: http://svn.apache.org/viewvc?view=rev&rev=512067
Log:
Bug 37864: Add target to generate binary and source compatibility report

Added:
    logging/log4j/branches/v1_2-branch/src/xdocs/stylesheets/compatibility.xslt
Modified:
    logging/log4j/branches/v1_2-branch/build.properties.sample
    logging/log4j/branches/v1_2-branch/build.xml
    logging/log4j/branches/v1_2-branch/docs/HISTORY.txt
    logging/log4j/branches/v1_2-branch/src/xdocs/download.xml

Modified: logging/log4j/branches/v1_2-branch/build.properties.sample
URL: http://svn.apache.org/viewvc/logging/log4j/branches/v1_2-branch/build.properties.sample?view=diff&rev=512067&r1=512066&r2=512067
==============================================================================
--- logging/log4j/branches/v1_2-branch/build.properties.sample (original)
+++ logging/log4j/branches/v1_2-branch/build.properties.sample Mon Feb 26 15:14:43 2007
@@ -54,3 +54,11 @@
 # but Velocity 1.4 is not compatible with JDOM 1.0, but beta 8 works okay
 # download for http://www.jdom.org/dist/binary/archive
 jdom.jar=${lib.home.dir}/jdom-b8/build/jdom.jar
+
+
+#
+#   CLIRR binary compatibility checker
+#      http://clirr.sourceforge.net
+clirr-core.jar=${lib.home.dir}/clirr-0.6/clirr-core-0.6.jar
+#  bcel 5.1 will throw NullPointerExceptions
+bcel.jar=${lib.home.dir}/bcel-5.2/bcel-5.2.jar

Modified: logging/log4j/branches/v1_2-branch/build.xml
URL: http://svn.apache.org/viewvc/logging/log4j/branches/v1_2-branch/build.xml?view=diff&rev=512067&r1=512066&r2=512067
==============================================================================
--- logging/log4j/branches/v1_2-branch/build.xml (original)
+++ logging/log4j/branches/v1_2-branch/build.xml Mon Feb 26 15:14:43 2007
@@ -511,7 +511,7 @@
              doctitle="log4j version ${version}<br>API Specification"
              windowtitle="Log4j Version ${version}"
              header="<b>Log4j ${version}</b>"
-             bottom="Copyright 2000-2005 Apache Software Foundation.">
+             bottom="Copyright 2000-2007 Apache Software Foundation.">
 
       <link href="http://java.sun.com/j2se/1.3/docs/api/"/>
       <link href="http://java.sun.com/j2ee/sdk_1.3/techdocs/api/"/>
@@ -552,6 +552,39 @@
             </new>
        </jdiff>
   </target>  
+
+
+	  <!-- ================================================================= -->
+	  <!-- Compare the current API with a previous release                   -->
+	  <!-- ================================================================= -->
+	  <target name="clirr" depends="jar" description="Check binary compatibility with arbitrary release">
+	  	   <fail unless="clirr-core.jar">-Dclirr-core.jar=PATH must be specified.</fail>
+	  	   <fail unless="bcel.jar">-Dbcel.jar=PATH must be specified.</fail>
+	  	   <fail unless="reference.jar">-Dreference.jar=PATH must be specified.</fail>
+	       <taskdef resource="clirrtask.properties" 
+	           classpath="${clirr-core.jar};${bcel.jar}"/>
+	       <delete dir="build/clirr"/>
+	       <mkdir dir="build/clirr/orig"/>
+	       <mkdir dir="build/clirr/new"/>
+	       <copy todir="build/clirr/orig">	       
+	       	    <fileset file="${jms.jar}"/>
+	       	    <fileset file="${jmx.jar}"/>
+				<fileset file="${reference.jar}"/>
+	       </copy>
+	       <copy todir="build/clirr/new">
+	       	    <fileset file="${jms.jar}"/>
+	       	    <fileset file="${jmx.jar}"/>
+	       	    <fileset dir="${jar.dest}" includes="${jar.filename}"/>
+	       </copy>
+	  	   <clirr failOnBinError="no" failOnSrcError="no">
+	  	        <origfiles dir="build/clirr/orig" includes="*.jar"/>
+	  	        <newfiles dir="build/clirr/new" includes="*.jar"/>
+	  	  	    <formatter type="xml" outfile="${docs.dest}/compatibility.xml"/>
+	  	  </clirr>
+	  	  <xslt in="${docs.dest}/compatibility.xml"
+	  	        out="${docs.dest}/compatibility.html"
+	  	        style="${basedir}/src/xdocs/stylesheets/compatibility.xslt"/>
+	  </target>  
 
   <!-- ============================================== -->
   <!-- Build the site files using Anakia              -->

Modified: logging/log4j/branches/v1_2-branch/docs/HISTORY.txt
URL: http://svn.apache.org/viewvc/logging/log4j/branches/v1_2-branch/docs/HISTORY.txt?view=diff&rev=512067&r1=512066&r2=512067
==============================================================================
--- logging/log4j/branches/v1_2-branch/docs/HISTORY.txt (original)
+++ logging/log4j/branches/v1_2-branch/docs/HISTORY.txt Mon Feb 26 15:14:43 2007
@@ -28,6 +28,7 @@
        41169: NTEventLogAppender.dll :: "missing" event description
        41487: Warning when configuring inner-class logger
        41186: AsyncAppender in 1.2.14 DiscardSummary events create NullPointerExceptions in layouts
+	   37864: Add target to generate binary and source compatibility report
  
  
  September 18th, 2006

Modified: logging/log4j/branches/v1_2-branch/src/xdocs/download.xml
URL: http://svn.apache.org/viewvc/logging/log4j/branches/v1_2-branch/src/xdocs/download.xml?view=diff&rev=512067&r1=512066&r2=512067
==============================================================================
--- logging/log4j/branches/v1_2-branch/src/xdocs/download.xml (original)
+++ logging/log4j/branches/v1_2-branch/src/xdocs/download.xml Mon Feb 26 15:14:43 2007
@@ -53,6 +53,7 @@
        <li><a href="http://issues.apache.org/bugzilla/show_bug.cgi?id=41169">41169</a>: NTEventLogAppender.dll :: "missing" event description</li>
        <li><a href="http://issues.apache.org/bugzilla/show_bug.cgi?id=41487">41487</a>: Warning when configuring inner-class logger</li>
        <li><a href="http://issues.apache.org/bugzilla/show_bug.cgi?id=41186">41186</a>: AsyncAppender in 1.2.14 DiscardSummary events create NullPointerExceptions in layouts</li>
+       <li><a href="http://issues.apache.org/bugzilla/show_bug.cgi?id=37864">37864</a>: Add target to generate binary and source compatibility report</li>
       </ul>
    </li>
     </ul>

Added: logging/log4j/branches/v1_2-branch/src/xdocs/stylesheets/compatibility.xslt
URL: http://svn.apache.org/viewvc/logging/log4j/branches/v1_2-branch/src/xdocs/stylesheets/compatibility.xslt?view=auto&rev=512067
==============================================================================
--- logging/log4j/branches/v1_2-branch/src/xdocs/stylesheets/compatibility.xslt (added)
+++ logging/log4j/branches/v1_2-branch/src/xdocs/stylesheets/compatibility.xslt Mon Feb 26 15:14:43 2007
@@ -0,0 +1,77 @@
+<!--
+ 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.
+
+-->
+<xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+  <xsl:output method="html"/>
+  
+  <xsl:template match="/">
+     <html>
+        <head>
+           <title>Apache log4j compatibility report</title>
+        </head>
+        <body>
+            <h2>Apache log4j compatibility report</h2>
+        	<xsl:apply-templates select="*"/>
+        </body>
+      </html>
+  </xsl:template>
+  
+  <xsl:template match="diffreport">
+     <table border="1" summary="Source and binary compatibility errors">
+     	<xsl:apply-templates select="difference[(@srcseverity='ERROR' or @binseverity='ERROR') and not(starts-with(@class, 'org.apache.log4j.lf5'))]"/>
+	 </table>
+  </xsl:template>
+  
+  <xsl:template match="difference">
+  	  <tr>
+  	     <td>
+      	    <xsl:choose>
+     		   <xsl:when test="contains(@class,'org.apache.log4j.')">o.a.l.<xsl:value-of select="substring-after(@class, 'org.apache.log4j.')"/></xsl:when>
+     		   <xsl:otherwise><xsl:value-of select="@class"/></xsl:otherwise>
+     	    </xsl:choose>
+     	    <xsl:if test="@method">
+     	    	<xsl:text>.</xsl:text>
+     	    	<xsl:call-template name="last-word">
+     	    		<xsl:with-param name="phrase" select="substring-before(@method, '(')"/>
+     	    	</xsl:call-template>
+     	    </xsl:if>
+     	 </td>
+  	     <td><xsl:value-of select="text()"/></td>
+  	  </tr>
+  </xsl:template>
+  
+  <xsl:template name="last-word">
+  	<xsl:param name="phrase"/>
+  	<xsl:choose>
+  		<xsl:when test="contains($phrase, ' ')">
+  			<xsl:call-template name="last-word">
+  				<xsl:with-param name="phrase" select="substring-after($phrase, ' ')"/>
+  			</xsl:call-template>
+  		</xsl:when>
+  		<xsl:otherwise>
+  			<xsl:value-of select="$phrase"/>
+  		</xsl:otherwise>
+  	</xsl:choose>
+  </xsl:template>
+  
+  <xsl:template match="@class">
+     	<xsl:choose>
+     		<xsl:when test="contains(.,'org.apache.log4j.')">o.a.l.<xsl:value-of select="substring-after(., 'org.apache.log4j.')"/></xsl:when>
+     		<xsl:otherwise><xsl:value-of select="."/></xsl:otherwise>
+     	</xsl:choose>
+  </xsl:template>
+</xsl:transform>
\ No newline at end of file



---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org