[slf4j-dev] svn commit: r1044 - in slf4j/trunk: . jcl-over-slf4j jcl-over-slf4j/src/main/java/org/apache/commons/logging/impl jcl-over-slf4j/src/main/resources/META-INF jul-to-slf4j slf4j-site/src/site/pages

ceki at slf4j.org ceki at slf4j.org
Tue Jun 3 23:18:52 CEST 2008


Author: ceki
Date: Tue Jun  3 23:18:51 2008
New Revision: 1044

Added:
   slf4j/trunk/slf4j-site/src/site/pages/compatibility.html
Modified:
   slf4j/trunk/jcl-over-slf4j/pom.xml
   slf4j/trunk/jcl-over-slf4j/src/main/java/org/apache/commons/logging/impl/SLF4JLogFactory.java
   slf4j/trunk/jcl-over-slf4j/src/main/resources/META-INF/MANIFEST.MF
   slf4j/trunk/jul-to-slf4j/pom.xml
   slf4j/trunk/pom.xml
   slf4j/trunk/slf4j-site/src/site/pages/codes.html
   slf4j/trunk/slf4j-site/src/site/pages/manual.html
   slf4j/trunk/slf4j-site/src/site/pages/news.html

Log:
- the jcl104-over-slf4j module renamed as jcl-over-slf4j
- added relocation support 

Modified: slf4j/trunk/jcl-over-slf4j/pom.xml
==============================================================================
--- slf4j/trunk/jcl-over-slf4j/pom.xml	(original)
+++ slf4j/trunk/jcl-over-slf4j/pom.xml	Tue Jun  3 23:18:51 2008
@@ -9,13 +9,13 @@
 	<modelVersion>4.0.0</modelVersion>
 
 	<groupId>org.slf4j</groupId>
-	<artifactId>jcl104-over-slf4j</artifactId>
+	<artifactId>jcl-over-slf4j</artifactId>
 	<packaging>jar</packaging>
-	<name>JCL Implemented Over SLF4J</name>
+	<name>JCL 1.1.1 implemented over SLF4J</name>
 
 	<url>http://www.slf4j.org</url>
 	<description>
-		JCL implementation over SLF4J
+		JCL 1.1.1 implementation over SLF4J
 	</description>
 
   <dependencies>
@@ -25,6 +25,11 @@
       <version>${project.version}</version>
       <scope>provided</scope>
 		</dependency>
+    <dependency>
+      <groupId>commons-logging</groupId>
+      <artifactId>commons-logging</artifactId>
+      <version>1.1.1</version>
+		</dependency>
   </dependencies>
 
   <build>

Modified: slf4j/trunk/jcl-over-slf4j/src/main/java/org/apache/commons/logging/impl/SLF4JLogFactory.java
==============================================================================
--- slf4j/trunk/jcl-over-slf4j/src/main/java/org/apache/commons/logging/impl/SLF4JLogFactory.java	(original)
+++ slf4j/trunk/jcl-over-slf4j/src/main/java/org/apache/commons/logging/impl/SLF4JLogFactory.java	Tue Jun  3 23:18:51 2008
@@ -174,13 +174,13 @@
    */
   public void release() {
     // This method is never called by jcl-over-slf4j classes. However,
-    // in certain deployment scenarios, in particular if jcl104-over-slf4j.jar
+    // in certain deployment scenarios, in particular if jcl-over-slf4j.jar
     // is
     // in the the web-app class loader and the official commons-logging.jar is
     // deployed in some parent class loader (e.g. commons/lib), then it is
     // possible
     // for the parent class loader to mask the classes shipping in
-    // jcl104-over-slf4j.jar.
+    // jcl-over-slf4j.jar.
     System.out.println("WARN: The method " + SLF4JLogFactory.class
         + "#release() was invoked.");
     System.out

Modified: slf4j/trunk/jcl-over-slf4j/src/main/resources/META-INF/MANIFEST.MF
==============================================================================
--- slf4j/trunk/jcl-over-slf4j/src/main/resources/META-INF/MANIFEST.MF	(original)
+++ slf4j/trunk/jcl-over-slf4j/src/main/resources/META-INF/MANIFEST.MF	Tue Jun  3 23:18:51 2008
@@ -1,9 +1,9 @@
-Implementation-Title: jcl104-over-slf4j
+Implementation-Title: jcl-over-slf4j
 Bundle-ManifestVersion: 2
-Bundle-SymbolicName: jcl104.over.slf4j
-Bundle-Name: jcl104-over-slf4j
+Bundle-SymbolicName: jcl.over.slf4j
+Bundle-Name: jcl-over-slf4j
 Bundle-Vendor: SLF4J.ORG
 Bundle-RequiredExecutionEnvironment: J2SE-1.3
-Export-Package: org.apache.commons.logging;version=1.0.4, 
-  org.apache.commons.logging.impl;version=1.0.4
+Export-Package: org.apache.commons.logging;version=1.1.1, 
+  org.apache.commons.logging.impl;version=1.1.1
 Import-Package: org.slf4j;version=${project.version}, org.slf4j.spi;version=${project.version}

Modified: slf4j/trunk/jul-to-slf4j/pom.xml
==============================================================================
--- slf4j/trunk/jul-to-slf4j/pom.xml	(original)
+++ slf4j/trunk/jul-to-slf4j/pom.xml	Tue Jun  3 23:18:51 2008
@@ -33,6 +33,13 @@
       <version>${project.version}</version>
       <scope>test</scope>
 	</dependency>
+
+	 <dependency>
+      <groupId>org.slf4j</groupId>
+      <artifactId>jcl104-over-slf4j</artifactId>
+      <version>${project.version}</version>
+      <scope>test</scope>
+	</dependency>
 		
   </dependencies>
 

Modified: slf4j/trunk/pom.xml
==============================================================================
--- slf4j/trunk/pom.xml	(original)
+++ slf4j/trunk/pom.xml	Tue Jun  3 23:18:51 2008
@@ -30,6 +30,7 @@
 		<module>slf4j-jdk14</module>
     <module>slf4j-log4j12</module>
     <module>slf4j-jcl</module>
+    <module>jcl-over-slf4j</module>
     <module>jcl104-over-slf4j</module>
     <module>log4j-over-slf4j</module>
     <module>jul-to-slf4j</module>

Modified: slf4j/trunk/slf4j-site/src/site/pages/codes.html
==============================================================================
--- slf4j/trunk/slf4j-site/src/site/pages/codes.html	(original)
+++ slf4j/trunk/slf4j-site/src/site/pages/codes.html	Tue Jun  3 23:18:51 2008
@@ -44,12 +44,12 @@
     </p>
 
     <p>This is a relatively common occurrence with recent versions of
-    Tomcat, especially if you place <em>jcl104-over-slf4j.jar</em> in
+    Tomcat, especially if you place <em>jcl-over-slf4j.jar</em> in
     <em>WEB-INF/lib</em> directory of your web-application instead of
-    <em>$TOMCAT_HOME/common/lib</em>, where $TOMCAT_HOME stands for the
-    directory where Tomcat is installed. In order to fully benefit
-    from the stability offered by <em>jcl104-over-slf4j.jar</em>, we
-    recommend that you place <em>jcl104-over-slf4j.jar</em> in
+    <em>$TOMCAT_HOME/common/lib</em>, where $TOMCAT_HOME stands for
+    the directory where Tomcat is installed. In order to fully benefit
+    from the stability offered by <em>jcl-over-slf4j.jar</em>, we
+    recommend that you place <em>jcl-over-slf4j.jar</em> in
     <em>$TOMCAT_HOME/common/lib</em> without placing a copy in your
     web-applications.
     </p>

Added: slf4j/trunk/slf4j-site/src/site/pages/compatibility.html
==============================================================================
--- (empty file)
+++ slf4j/trunk/slf4j-site/src/site/pages/compatibility.html	Tue Jun  3 23:18:51 2008
@@ -0,0 +1,117 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/2000/REC-xhtml1-20000126/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+<title>Compatibility report</title>
+<link rel="stylesheet" type="text/css" media="screen" href="css/site.css" />
+</head>
+<body>
+	<script>
+prefix='';	
+</script>
+
+<script src="templates/header.js"></script>
+<div id="left">
+  <script src="templates/left.js"></script>
+</div>
+<div id="right">
+  <script src="templates/right.js"></script>
+</div>
+<div id="content">
+
+
+  <h1>Compatibility report</h1>
+
+  <p>Given the very large user base of SLF4J, we take backward
+  compatibility very seriously. As such, changes that may cause
+  incompatibility problems are listed in this page. Moreover, since
+  slf4j-api.jar is the main entry point into SLF4J, that is the module
+  that will be covered in most detail.
+  </p>
+
+  <p>The list is computed using <a
+  href="http://clirr.sourceforge.net/">clirr</a>. If you have reasons
+  to suspect incompatible changes not mentioned here, please kindly
+  contact the slf4j developers list.</p>
+
+
+  
+  <h2><a href="#1_5_1" name="1_5_1">Version 1.5.1 compared to 1.5.0</a></h2>
+
+
+  <h3>slf4j-api module, list of breaking changes:</h3>
+  
+
+  <table class="bodyTable">
+    <tr>
+      <th>Severity</th>
+      <th>Description</th>
+      <th>Class</th>
+      <th>Method / Field</th>
+    </tr>
+    <tr >
+      <td>Error</td>
+      <td>Method 'getCopyOfContextMap()' has been added to an
+      interface
+      </td>
+      <td>org.slf4j.spi.MDCAdapter</td>
+      <td>public java.util.Map getCopyOfContextMap()</td>
+    </tr>
+    <tr class="alt">
+      <td>Error</td>
+      <td>Method 'setContextMap(Map)' has been added to an
+      interface
+      </td>
+      <td>org.slf4j.spi.MDCAdapter</td>
+      <td>public void setContextMap(java.util.Map)</td>
+    </tr>
+  </table>
+
+
+  <p>The addition of the <code>getCopyOfContextMap()</code> method in
+  the <code>MDCAdapter</code> class should only impact users who have
+  their own implementation of the said interface. Except for bindings
+  that ship with SLF4J and for logback-classic, which will be
+  naturally upgraded, there are no known other implementations of
+  <code>MDCAdapter</code>. In a rare but still possible scenario, if
+  the user mixes different versions for slf4j-api.jar, say version
+  1.5.1. and an SLF4J binding, say slf4j-log4j12.jar version 1.5.0,
+  then a <code>java.lang.AbstractMethodError</code> will be thrown,
+  but only if the client code calls the newly added method. <span
+  style="color:green"> In short, although generally speaking the
+  addition of a method to an interface is a breaking change, we are
+  confident that no users will be impacted in this particular
+  case.</span>
+  </p>
+
+  <p>Similar reasoning applies to the <code>setContextMap(Map)</code>
+  method.</p> 
+
+
+  <h3>Other modules</h3>
+
+  <p>No breaking changes to report.</p> 
+
+
+  <!-- ========================================= -->
+  <h2><a href="#1_5_0" name="1_5_0">Version 1.5.0 compared to
+  1.4.3</a></h2>
+
+  <p>No breaking changes to report.</p> 
+
+  <!-- ========================================= -->
+  <h2><a href="#1_4_3" name="1_4_3">Version 1.4.3 compared to
+  1.4.2</a></h2>
+  <p>No breaking changes to report.</p>
+
+  <!-- ========================================= -->
+  <h2><a href="#1_4_2" name="1_4_2">Version 1.4.2 compared to 1.4.1</a></h2>
+  <p>No breaking changes to report.</p> 
+
+  <!-- ========================================= -->
+  <h2><a href="#1_4_1" name="1_4_1">Version 1.4.1 compared to
+  1.4.0</a></h2>
+  <p>No breaking changes to report.</p> 
+
+</div> </body> </html>
\ No newline at end of file

Modified: slf4j/trunk/slf4j-site/src/site/pages/manual.html
==============================================================================
--- slf4j/trunk/slf4j-site/src/site/pages/manual.html	(original)
+++ slf4j/trunk/slf4j-site/src/site/pages/manual.html	Tue Jun  3 23:18:51 2008
@@ -163,11 +163,11 @@
         <h2>Gradual migration to SLF4J from Jakarta Commons Logging
         (JCL)</h2>
         
-        <h2><em>jcl104-over-slf4j.jar</em></h2>
+        <h2><em>jcl-over-slf4j.jar</em></h2>
 
         <p>To ease migration to SLF4J from JCL, recent SLF4J
         distributions include the jar file
-        <em>jcl104-over-slf4j.jar</em>. This jar file is intended as a
+        <em>jcl-over-slf4j.jar</em>. This jar file is intended as a
         drop-in replacement for JCL version 1.0.4. It implements the
         public API of JCL but using SLF4J underneath, hence the name
         "JCL over SLF4J."
@@ -179,7 +179,7 @@
         future. You can immediately enjoy the benefits of SLF4J's
         reliability and preserve backward compatibility at the same
         time. Just replace <em>commons-logging.jar</em> with
-        <em>jcl104-over-slf4j.jar</em>. Subsequently, the selection of
+        <em>jcl-over-slf4j.jar</em>. Subsequently, the selection of
         the underlying logging system will be done by SLF4J instead of
         JCL but without the class loader headaches. The underlying
         logging system can be any of NOP, simple, jdk14 logging, log4j
@@ -202,11 +202,11 @@
         rest of the application which can continue to use JCL.
         </p>
           
-        <h2><em>jcl104-over-slf4j.jar</em> should not be confused with
+        <h2><em>jcl-over-slf4j.jar</em> should not be confused with
         <em>slf4j-jcl.jar</em></h2>
  
         
-        <p>JCL-over-SLF4J, i.e. <em>jcl104-over-slf4j.jar</em>, comes
+        <p>JCL-over-SLF4J, i.e. <em>jcl-over-slf4j.jar</em>, comes
         in handy in situations where JCL needs to be supported for
         backward compatibility reasons. It can be used to fix problems
         associated with JCL, without necessarily adopting the SLF4J
@@ -221,7 +221,7 @@
         logging decisions to JCL so that the dependency on SLF4J API
         by your component will be transparent to the larger whole.        </p>
 
-        <p>Please note that <em>jcl104-over-slf4j.jar</em> and
+        <p>Please note that <em>jcl-over-slf4j.jar</em> and
         <em>slf4j-jcl.jar</em> cannot be deployed at the same
         time. The former jar file will cause JCL to delegate the
         choice of the logging system to SLF4J and the latter jar file
@@ -282,10 +282,9 @@
 
             <td>
               <p>The implementation of JCL over SLF4J, i.e
-              <em>jcl104-over-slf4j.jar</em>, will allow your project
-              to migrate to SLF4J piecemeal, without breaking
-              compatibility with existing software using
-              JCL.
+              <em>jcl-over-slf4j.jar</em>, will allow your project to
+              migrate to SLF4J piecemeal, without breaking
+              compatibility with existing software using JCL.
               </p>
             </td>
           </tr>

Modified: slf4j/trunk/slf4j-site/src/site/pages/news.html
==============================================================================
--- slf4j/trunk/slf4j-site/src/site/pages/news.html	(original)
+++ slf4j/trunk/slf4j-site/src/site/pages/news.html	Tue Jun  3 23:18:51 2008
@@ -33,6 +33,13 @@
 
   <h3>XXX, 2008 - Release of SLF4J 1.5.1</h3>
 
+  <p>See also the <a href="compatibility.html#1_5_1">compatibility
+  report for this version</a>.</p>
+
+  <p>In order to support JCL version 1.1.1, the
+  <em>jcl104-over-slf4j</em> module was renamed as
+  <em>jcl-over-slf4j</em>.
+
   <p>Fixed <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=68">bug
   68</a> reported by Su Chuan and David Rauschenbach. SLF4J requires
   log4j 1.2.12 or later. However, if an older version of log4j is
@@ -51,9 +58,9 @@
   </p>
 
 
-  <p>Added the <code>getCopyOfContextMap</code> method to the
-  <code>MDCAdapter</code> and <code>org.sf4j.MDC</code> classes. This
-  was requested in <a
+  <p>Added the <code>getCopyOfContextMap</code> and
+  <code>setContextMap</code> methods to the <code>MDCAdapter</code>
+  and <code>org.sf4j.MDC</code> classes. This was requested in <a
   href="http://bugzilla.slf4j.org/show_bug.cgi?id=84">bug 84</a> by
   Anton Tagunov.
   </p>



More information about the slf4j-dev mailing list