| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" |
| "http://www.w3.org/TR/xhtml1/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>SLF4J News</title> |
| <link rel="stylesheet" type="text/css" media="screen" href="css/site.css" /> |
| <link rel="stylesheet" type="text/css" href="css/prettify.css" /> |
| </head> |
| <body onload="prettyPrint()"> |
| <script type="text/javascript">prefix='';</script> |
| <script type="text/javascript" src="js/prettify.js"></script> |
| |
| <script src="templates/header.js" type="text/javascript"></script> |
| <div id="left"> |
| <script src="templates/left.js" type="text/javascript"></script> |
| </div> |
| <div id="content"> |
| |
| |
| <h1>SLF4J News</h1> |
| |
| <p>Please note that you can receive SLF4J related announcements by |
| subscribing to the <a |
| href="http://www.qos.ch/mailman/listinfo/announce">QOS.ch |
| announce</a> mailing list. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>March 26th, 2015 - Release of SLF4J 1.7.12</h3> |
| |
| <p>All java files have been reformatted to with the code formatter |
| style defined in <i>codeStyle.xml</i>. This style uses 4 spaces for |
| indentation and a maximum line width of 160.</p> |
| |
| <p>As SLF4J requires JDK 1.5 or later, the |
| <code>Bundle-RequiredExecutionEnvironment</code> declaration in the |
| various MANIFEST files have been updated to J2SE-1.5. |
| </p> |
| |
| <p>Added missing Bundle-ManifestVersion attribute in the MANIFEST |
| files in log4j-over-slf4j. The issue was raised in <a |
| href="http://jira.qos.ch/browse/SLF4J-321">SLF4J-231</a> by Nikolas |
| Falco who also provided the the appropriate pull request. </p> |
| |
| <p>Added <code>getAppender(String)</code> method in |
| <code>Category</code> class in the log4j-over-slf4j module. This |
| addition was requested by Ramon Gordillo in <a |
| href="http://jira.qos.ch/browse/SLF4J-319">SLF4J-319</a>. |
| </p> |
| |
| <p>Added <code>setThreshold</code> method in |
| <code>AppenderSkeleton</code> class in the log4j-over-slf4j |
| module. This addition was requested by Dimitrios Liapis who also |
| provided the appropriate pull request. |
| </p> |
| |
| <p>Added <code>getParent</code> method in <code>Category</code> |
| class in the log4j-over-slf4j module. This addition was requested |
| by Himanshu Bhardwaj in <a |
| href="http://jira.qos.ch/browse/SLF4J-318">SLF4J-318</a>. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>6th of January, 2015 - Release of SLF4J 1.7.10</h3> |
| |
| <p>The <code>MDC.putCloseable</code> method now explicitly returns |
| <code>MDC.MDCloseable</code> instead of the more generic |
| <code>java.io.Closeable</code>. This in turn allows one to write |
| try-with-resources statement without a catch clause. Many thanks to |
| William Delanoue for proposing this change.</p> |
| |
| <p>The various constructors in <code>FileAppender</code> in the |
| log4j-over-slf4j module are now public. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>16th of December, 2014 - Release of SLF4J 1.7.9</h3> |
| |
| <p class="highlight"><a href="codes.html#loggerNameMismatch">Spot |
| incorrectly named loggers</a> by setting the |
| <code>slf4j.detectLoggerNameMismatch</code> system property to |
| true.</p> |
| |
| <p><a href="codes.html#loggerNameMismatch">Spot incorrectly named |
| loggers</a> by setting the |
| <code>slf4j.detectLoggerNameMismatch</code> system property to |
| true. This significant feature was contributed by Alexander |
| Dorokhine.</p> |
| |
| <p>Added <code>MDC.putCloseable</code> method so that it can be |
| used as a <a |
| href="https://docs.oracle.com/javase/7/docs/technotes/guides/language/try-with-resources.html">closeable |
| resource</a> under Java 7.</p> |
| |
| <p>Added <code>getContext</code> method returning a hashtable in |
| org.apache.log4j.MDC in the log4j-over-slf4j module. |
| </p> |
| |
| <p>The introduction of the @Nonnull JSR 305 annotation in SLF4J |
| version 1.7.8 causes the Scala compiler to fail. This is issue has |
| been documented in <a |
| href="https://issues.scala-lang.org/browse/SI-5420">SI-5420</a>. Given |
| that many Scala users will be affected by this issue for the |
| foreseeable future, we have decided to renounce the user of JSR 305 |
| annotations in SLF4J for the time being. |
| </p> |
| |
| <p>Numerous small code improvements too minor to be listed |
| here.</p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>4th of April, 2014 - Release of SLF4J 1.7.7 </h3> |
| |
| <p>SFL4J API now uses generics. This enhancement was contributed by |
| Otavio Garcia. Due to erasure of generics in Java, the changes are |
| backward-compatible.</p> |
| |
| <p>The slf4j-migrator can now convert statements using the long deprecated |
| <code>Category</code> class.</p> |
| |
| <p>Added the <code>SimpleLayout</code> and |
| <code>FileAppender</code> classes to the log4j-over-slf4j |
| module.</p> |
| |
| |
| <h3>February 5th, 2014 - Release of SLF4J 1.7.6</h3> |
| |
| <p>Added slf4j-android module to the slf4j distribution. This |
| module is contributed by Andrey Korzhevskiy.</p> |
| |
| <p>Loggers created during the initialization phase are no longer |
| <code>NOPLoggers</code> which drop all logging calls. Instead, |
| SLF4J now creates substitute loggers which delegate to the |
| appropriate logger implementation after the initilization phase |
| completes. Only calls made to these loggers during the |
| initialization phase are dropped. This enhacement was proposed in |
| <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=311">bug 311</a> |
| by Chetan Mehrotra. |
| </p> |
| |
| <p>Improvements to the <code>exit()</code> and |
| <code>throwing()</code> methods in <code>XLogger</code>. This |
| enhacement was requested in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=197">bug 197</a>. |
| </p> |
| |
| <p>Concunrrency improvement in <code>MessageFormatter</code>. This |
| improvement was contributed by Vivek Pathak in a <a |
| href="https://github.com/qos-ch/slf4j/pull/52">pull |
| request</a>.</p> |
| |
| <p>Concunrrency improvement in |
| <code>BasicMarkerFactory</code>. This improvement was contributed |
| by Mikhail Mazursky in a <a |
| href="https://github.com/qos-ch/slf4j/pull/40">pull |
| request</a>.</p> |
| |
| <p><code>JCLLoggerAdapter</code> was incorrectly invoking |
| <code>isDebugEnabled</code> calls in its <code>trace()</code> |
| methods. This issue was reported in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=281">bug 281</a>. |
| |
| </p> |
| |
| <p>In the log4j-over-slf4j module, the <code>setLevel</code> |
| method in the <code>Category</code> class. This fixes <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=279">bug |
| 279</a>. Alfredo Ramos provied the relevant patch. |
| </p> |
| |
| <p>In the log4j-over-slf4j module, added empty implementations for |
| <code>OptionHander</code>, <code>WriterAppender</code>, |
| <code>ConsoleAppender</code> and <code>AppenderSkeleton</code> |
| classes. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>25th of March, 2013 - Release of SLF4J 1.7.5</h3> |
| |
| <p class="highlight">Given the significance of these performance |
| improvements, users are highly encouraged to migrate to SLF4J |
| version 1.7.5 or later. </p> |
| |
| <p><span class="label notice">performance improvements</span> The |
| logger factories in most SLF4J modules namely in jcl-over-slf4j, |
| log4j-over-slf4j, slf4j-jcl, slf4j-jdk14, slf4j-log4j12, and |
| slf4j-simple now use a <code>ConcurrentHashMap</code> instead of a |
| regular <code>HashMap</code> to cache logger instances. This change |
| significantly improves logger retrieval times at the cost of some |
| memory overhead. This improvement was requested in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=298">bug #298</a> |
| by Taras Tielkes who also provided the relevant patch. |
| </p> |
| |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>18th of March, 2013 - Release of SLF4J 1.7.4</h3> |
| |
| <p>Added a package private <code>reset()</code> method to |
| <code>SimpleLoggerFactory</code> for testing purposes.</p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>15th of March, 2013 - Release of SLF4J 1.7.3</h3> |
| |
| <p>The jul-to-slf4j bridge now correctly handles cases where the |
| message string contains {}-placeholders but has no or zero |
| parameters. This fixes <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=212">bug |
| #212</a>. The relevant patch was provided by Matthew Preston in a |
| git pull request.</p> |
| |
| <p>Added missing methods and classes in log4j-over-slf4j module for |
| Velocity compatibility. This issue was reported in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=280">bug 280</a> by |
| Thomas Mortagne.</p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>11th of October, 2012 - Release of SLF4J 1.7.2</h3> |
| |
| <p>Added osgi-over-slf4j module which serves as an OSGi LogService |
| implementation delegating to slf4j. This module is maintained by |
| Matt Bishop and Libor Jelinek.</p> |
| |
| <p> Christian Trutz added missing PatternLayout class as well as |
| several methods in the <code>Logger</code> and |
| <code>Category</code> classes. See commit 442e90ba5785cba9 dated |
| September 27th 2012 for details. |
| </p> |
| |
| <p>Added org.slf4j.simpleLoggerwarnLevelString in slf4j-simple |
| module.</p> |
| |
| <p>Fixed <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=272">bug |
| 272</a>. All <code>Logger</code> implementations shipping with |
| SLF4J use <code>Object...</code> instead of <code>Object[]</code> |
| to avoid compiler warnings.</p> |
| |
| |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>14th of September, 2012 - Release of SLF4J 1.7.1</h3> |
| |
| <p><a |
| href="apidocs/org/slf4j/impl/SimpleLogger.html"><code>SimpleLogger</code></a> |
| now supports writing to a file. The property names for configuring |
| <code>SimpleLogger</code> have been modified to be consistently in |
| camel case. More configuration options have been added. In the |
| absence of configuration directives, <code>SimpleLogger</code> will |
| behave exactly the same as in the past. <b>If you are one of the |
| few users configuring <code>SimpleLogger</code> with configuration |
| properties, you will need to adapt to the new and more consistent |
| property names.</b></p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>6th of September, 2012 - Release of SLF4J 1.7.0</h3> |
| |
| <p><span class="bold big green">SLF4J now requires JDK 1.5.</span></p> |
| |
| <p>Printing methods in the <a |
| href="apidocs/org/slf4j/Logger.html">Logger</a> interface now offers |
| variants accepting <a |
| href="http://docs.oracle.com/javase/1.5.0/docs/guide/language/varargs.html">varargs</a> |
| instead of Object[]. Given that under the hood, the Java compiler |
| transforms varargs into an array, this change is totally 100% |
| no-ifs-or-buts backward compatible with all existing client |
| code. </p> |
| |
| <p>The logger field (of type <code>java.util.logging.Logger</code>) |
| in <code>JDK14LoggerAdapter</code> is now marked as transient. This |
| fixes <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=261">bug |
| #261</a>, a serialization problem reported by Thorbjørn Ravn |
| Andersen.</p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>11th of June, 2012 - Release of SLF4J 1.6.6</h3> |
| |
| <p>Source repository has been moved to <a |
| href="https://github.com/qos-ch/slf4j">https://github.com/qos-ch/slf4j</a> |
| on github.</p> |
| |
| <p>In case multiple bindings are found on the class path, SLF4J |
| will now output the name of the framework/implementation class it |
| binds with.</p> |
| |
| <p><a |
| href="apidocs/org/slf4j/impl/SimpleLogger.html">SimpleLogger</a> |
| now supports configuration properties. </p> |
| |
| <p>LoggerWrapper in the slf4j-ext module now correctly deals with |
| markers. This fixes <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=265">bug #265</a> |
| reported by Dario Campagna.</p> |
| |
| <p>The log4j-over-slf4j module now supports legacy projects |
| providing their own log4j <code>LoggerFactory</code>. This fixes <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=234">bug #234</a> |
| reported by Laurent Pellegrino with Piotr Jagielski providing the |
| appropriate patch.</p> |
| |
| <h3>4th of June, 2012 - Release of SLF4J 1.6.5</h3> |
| |
| <p>In the slf4j-log4j12 module, upgraded the log4j dependency to |
| version 1.2.17.</p> |
| |
| <p>Added removeHandlersForRootLogger() method to <code><a |
| href="apidocs/org/slf4j/bridge/SLF4JBridgeHandler.html">SLF4JBridgeHandler</a></code> |
| class.</p> |
| |
| <p>The log4j-over-slf4j module now exports all its packages in its |
| manifest. This issue was reported in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=262">262</a> by |
| Mikhail Mazursky who also provided the relevant patch. |
| </p> |
| |
| <h3>October 31st, 2011 - Release of SLF4J 1.6.4</h3> |
| |
| <p>Fixed in thread-safety issues in <code>BasicMDCAdapter</code> |
| fixing <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=203">bug |
| #203</a> and <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=224">bug |
| #224</a>. Note that <code>BasicMDCAdapter</code> is only used with |
| the slf4j-jdk14.jar binding. |
| </p> |
| |
| <p><code>BasicMDCAdapter</code> invoked a method introduced in JDK |
| 1.5 preventing it from running under JDK 1.4. Interestingly enough, |
| this issue has never been reported by the user community.</p> |
| |
| <h3>October 17th, 2011 - Release of SLF4J 1.6.3</h3> |
| |
| <p><code>LogEvent</code> class in slf4j-ext module now correctly |
| passes the event data as a parameter object. This fixes <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=246">bug #246</a> |
| reported by Ralph Goers. |
| </p> |
| |
| <p>Added missing OSGi manifest to the jul-to-slf4j module. This |
| fixes <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=166">bug |
| #166</a> reported by Ekkehard Gentz. </p> |
| |
| <p>In the log4j-over-slf4j module, added missing |
| <code>getAllAppenders</code>() method in <code>Category</code> |
| class. This fixes <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=235">bug #235</a> |
| reported by Anthony Whitford. |
| </p> |
| |
| <h3>August 19th, 2011 - Release of SLF4J 1.6.2</h3> |
| |
| <p>Fixed <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=138">bug |
| #138</a>. SLF4J will no longer complain about multiple SLF4J |
| bindings when running under a Weblogic server. |
| </p> |
| |
| <p>Fixed <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=228">bug |
| #228</a>. When running under IBM's JDK, and if no binding can be |
| found, SLF4J will no longer throw a |
| <code>NoClassDefFoundError</code>. Instead, it will default to an |
| NOP implementation. Under the same circumstances but with Sun's |
| JDK, SLF4J already defaulted to an NOP implementation since release |
| 1.6.0.</p> |
| |
| <p>Added certain missing classes to the log4j-over-slf4j module as |
| requested in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=225">bug 225</a> by |
| Josh Stewart. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>July 5th, 2010 - Release of SLF4J 1.6.1</h3> |
| |
| <p>Updated log4j dependency to version 1.2.16 and <a |
| href="http://cal10n.qos.ch/">CAL10N</a> dependency to version |
| 0.7.4. |
| </p> |
| |
| <p>Fixed missing versioning OSGi metadata in the log4j-over-slf4j |
| module. This problem was reported in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=187">bug 187</a> by |
| David Savage. |
| </p> |
| |
| |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>May 8th, 2010 - Release of SLF4J 1.6.0</h3> |
| |
| <p>It is expected that <em>all</em> SLF4J releases in the 1.6.x |
| series will be mutually compatible. |
| </p> |
| |
| <p>As of SLF4J version 1.6.0, in the absence of an SLF4J binding, |
| slf4j-api will default to a no-operation implementation discarding |
| all log requests. Thus, instead of throwing an exception, SLF4J |
| will emit a single warning message about the absence of a binding |
| and proceed to discard all log requests without further |
| protest. See also the <a href="manual.html#libraries">relevant |
| section</a> in the user manual. |
| </p> |
| |
| <p>In the presence of multiple parameters and if the last argument |
| in a logging statement is an exception, then SLF4J will now presume |
| that the user wants the last argument to be treated as an exception |
| and not a simple parameter. See the relevant <a |
| href="faq.html#paramException">FAQ entry</a> for further |
| details. This fixes <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=70">bug 70</a> |
| submitted by Joern Huxhorn who also provided the relevant patch. |
| </p> |
| |
| <p>The <code>log</code> method in <code>LocationAwareLogger</code> |
| interface now admits an additional parameter of type |
| <code>Object[]</code> representing additional arguments of the log |
| request. Due to this modification, slf4j-api version 1.6.x will not |
| work with bindings shipping with SLF4J 1.5.x -- bindings shipping |
| with 1.6.x must be used. |
| </p> |
| |
| |
| <p>Fixed <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=150">bug 150</a> by |
| implementing missing <code>resetConfiguration()</code> and |
| <code>shutdown()</code> methods in <code>LogManager</code> (in |
| log4j-over-slf4j) as nop. In addition, the |
| <code>getCurrentLoggers()</code> method has been implemented by |
| returning an empty enumeration. |
| </p> |
| |
| |
| <p>Fixed <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=170">bug 170</a> by |
| a bare-bones implementation of the <code>NDC</code> class in |
| log4j-over-slf4j.</p> |
| |
| <p>Fixed <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=175">bug 175</a> by |
| synchronizing access to the loggerNameList field.</p> |
| |
| <p>Fixed <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=164">bug 164</a> |
| observed when SLF4J artifacts were placed under |
| java.endorsed.dirs.</p> |
| |
| <p>Fixed sub-optimal list type usage in |
| <code>SLF4JLogFactory</code> as reported in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=179">bug 179</a> by |
| Sebastian Davids. |
| </p> |
| |
| |
| <p>Fixed documentation inconsistency in <code>SLF4JLog</code> as |
| reported in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=180">bug 180</a> by |
| Sebastian Davids. |
| </p> |
| |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>February 25th, 2010 - Release of SLF4J 1.5.11</h3> |
| |
| |
| <p>Users yet unfamiliar with SLF4J sometimes unknowingly place both |
| <em>log4j-over-slf4j.jar</em> and <em>slf4j-log4j12.jar</em> |
| simultaneously on the class path causing stack overflow |
| errors. Simultaneously placing both <em>jcl-over-slf4j.jar</em> and |
| <em>slf4j-jcl.jar</em> on the class path, is another occurrence of |
| the same general problem. As of this version, SLF4J preempts the |
| inevitable stack overflow error by throwing an exception with |
| details about the actual cause of the problem. This is deemed to be |
| better than leaving the user wondering about the reasons of the |
| <code>StackOverflowError</code>. |
| </p> |
| |
| <p>Fixed <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=168">bug |
| 168</a>. In case log4j-over-slf4j is used and a logback appender |
| requires a third party library which depends on log4j, the |
| <code>log(String FQCN, Priority p, Object msg, Throwable t)</code> |
| method in log4j-over-slf4j's Category class would throw an |
| <code>UnsupportedOperationException</code>. Problem reported by Seth |
| Call.</p> |
| |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>December 3rd, 2009 - Release of SLF4J 1.5.10</h3> |
| |
| <p>SLF4J version 1.5.10 consist of bug fixes and minor |
| enhancements. It is totally backward compatible with SLF4J version |
| 1.5.8. However, the slf4j-ext module ships with a new package called |
| <code>org.slf4j.cal10n</code> which adds <a |
| href="localization.html">localized/internationalized logging</a> |
| support as a thin layer built upon the <a |
| href="http://cal10n.qos.ch">CAL10N API</a>.</p> |
| |
| <p><a href="http://www.slf4j.org/android/">SLF4J-android</a>, |
| maintained by <a |
| href="http://dbis.cs.unibas.ch/team/thorsten-moller/dbis_staff_view">Thorsten |
| Möller</a>, was added as a daughter project of SLF4J. |
| </p> |
| |
| <p>Added missing "Export-Package" declaration for cal10n in the OSGi |
| manifest file for sfl4j-ext. This was requested in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=156">bug 156</a> by |
| Pete Muir.</p> |
| |
| <p>In log4j-over-slf4j, added missing log(...) methods as requested |
| by Zoltan Szel in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=139">bug report |
| 139</a>.</p> |
| |
| <p>In log4j-over-slf4j, added missing <code>LogManager</code> class |
| as requested by Rick Beton in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=150">bug report |
| 150</a>.</p> |
| |
| <p>In the slf4j-ext module, added |
| <code>getCopyOfChildTimeInstruments</code> and |
| <code>getCopyOfGlobalStopWatch</code> methods to the |
| <code>Profiler</code> class. This enables developers to build their |
| own output formatters for a given Profiler. This feature was |
| requested by David Lindelöf in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=141">bug 141</a>. |
| </p> |
| |
| <p>Fixed a <code>NullPointerException</code> occurring in unspecified |
| conditions as described in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=146">bug report |
| 146</a> by Dapeng Ni.</p> |
| |
| <p>Added missing OSGi manifest to the <em>log4j-over-slf4j</em> |
| module as requested by Wade Poziombka in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=117">bug 117</a>. |
| </p> |
| |
| <p>OSGi manifests produced by SLF4J now replace the '-' character by |
| '.' in compliance with the OSGi specification. This fixes <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=152">bug 152</a> |
| according to the patch supplied by Hugues Malphettes. |
| </p> |
| |
| <p>Fixed packaging issue in jcl104-over-slf4j which inadvertently |
| produced a jar file as described in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=151">bug 151</a> by |
| Jesse McConnell.</p> |
| |
| |
| |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>June 11th, 2009 - Release of SLF4J 1.5.8</h3> |
| |
| <p>SLF4J version 1.5.8 consist of bug fixes. It is totally backward |
| compatible with SLF4J version 1.5.7.</p> |
| |
| <p>The Maven pom file for the <code>log4j-over-slf4j</code> module |
| contained a compile time dependency on the <code>slf4j-jdk14</code> |
| module. The dependency should have been declared in the test |
| scope. This problem was reported by Jean-Luc Geering on the slf4j |
| user list. |
| </p> |
| |
| <h3>June 10th, 2009 - Release of SLF4J 1.5.7</h3> |
| |
| <p>SLF4J version 1.5.7 consist of bug fixes and minor |
| enhancements. It is totally backward compatible with SLF4J version |
| 1.5.6.</p> |
| |
| <p>In SLF4J versions 1.5.5 and 1.5.6, the <code>LoggerFactory</code> |
| class which is at the core of SLF4J, if a version compatibility |
| issue was detected, accidentally invoked a method which was |
| introduced in JDK 1.5. Thus, instead of issuing a clear warning |
| message, SLF4J would throw a |
| <code>NoClassDefFoundError</code>. Consequently, SLF4J would not run |
| with JDK 1.4 and earlier but only if a version incompatibility issue |
| was present. For example, if you were mixing |
| <em>slf4j-api-1.5.6.jar</em> with <em>slf4j-simple-1.4.2.jar</em>, |
| which are mutually incompatible. Please note that this bug affects |
| only SLF4J versions 1.5.5 and 1.5.6 <em>and</em> only in the |
| presence of incompatible versions of slf4j-api and its binding. |
| </p> |
| |
| <p>SLF4J will now emit a warning if more than one binding is present |
| on the class path. This enhancement was proposed in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=132">bug 132</a> |
| contributed by by Robert Elliot. |
| </p> |
| |
| <p>The Log interface implementations in the jcl-over-slf4j module |
| will now correctly cope with serialization. This fixes <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=79">bug 79</a> |
| reported by Mathias Bogaert. Many thanks to Eric Vargo for precisely |
| identifying the problem and supplying the corresponding patch.</p> |
| |
| <p>The log4j-over-slf4j module will now correctly |
| interact with logging frameworks supporting location information |
| such as java.util.logging and logback. This fixes <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=131">bug 131</a> |
| reported by Marc Zampetti. |
| </p> |
| |
| <p><code>SLF4JBridgeHandler</code> will no longer ignore log records |
| with an empty message. This fixes <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=108">bug 108</a> |
| reported by Pepijn Van Eeckhoudt and independently by Dan Lewis. |
| </p> |
| |
| <p>In case the <code>toString()</code> method of a parameter throws |
| an exception, <code>MessageFormatter</code> will now print an error |
| message, instead of letting the exception bubble higher up as |
| previously. This fixes <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=112">bug 112</a> |
| submitted by Joern Huxhorn. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>November 21st, 2008 - Release of SLF4J 1.5.6</h3> |
| |
| <p>SLF4J version 1.5.6 consists of bug fixes. Users are encouraged |
| to upgrade to SLF4J version 1.5.6. The upgrade should pose no |
| problems. Nevertheless, you might still want to refer to the SLF4J |
| <a href="compatibility.html">compatibility report</a>. |
| </p> |
| |
| <p>Fixed long standing <a |
| href="http://jira.qos.ch/browse/LBCLASSIC-87">LBCLASSIC-87</a> and |
| its younger sibling <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=113">bug |
| 113</a>. With each call to getLogger() method, |
| <code>LoggerContext</code> will now retrieve the ILoggerFactory |
| afresh from <code>StaticLoggerBinder</code>. This change enables |
| context selectors of native implementations, e.g logback, to work |
| correctly. |
| </p> |
| |
| <p>Fixed <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=114">bug |
| 114</a> reported by Jason Arndt. Corrected the way |
| <code>XLogger</code> (in slf4j-ext) passes its fully qualified class |
| name so that the underlying logging system can correctly compute |
| location information. |
| </p> |
| |
| |
| <p>The <code>install()</code> method of |
| <code>SLF4JBridgeHandler</code> will no longer reset the entire |
| j.u.l. environment but solely add a <code>SLF4JBridgeHandler</code> |
| instance to jul's root logger. By the same token, the |
| <code>uninstall()</code> method will remove previously added |
| <code>SLF4JBridgeHandler</code> instances without making any other |
| modifications to the j.u.l. configuration. |
| </p> |
| |
| <p>Added <code>MDCStrLookup</code> to slf4j-ext. This class can be |
| used with Apache Commons Lang's <code>StrSubstitutor</code> class to |
| inject values in the SLF4J MDC into strings. Information on |
| StrSubstitutor can be found at <a |
| href="http://commons.apache.org/lang/api-release/org/apache/commons/lang/text/StrSubstitutor.html">StrSubstitutor |
| javadoc</a>. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>October 17th, 2008 - Release of SLF4J 1.5.5</h3> |
| |
| <p>The version check mechanism introduced in SLF4J 1.5.4 was |
| inconsistent with the large size of SLF4J's installed user base. We |
| cannot expect external SLF4J implementations to align their release |
| schedule with that of SLF4J. Consequently, this SLF4J version, |
| namely 1.5.5, retains versions checks but as an elective |
| process. For further details see the <a |
| href="faq.html#version_checks">relevant entry</a> in the FAQ. |
| </p> |
| |
| <p>You are highly encouraged to upgrade to SLF4J version 1.5.5. The |
| upgrade should pose no problems. Nevertheless, you might still want |
| to refer to the SLF4J <a href="compatibility.html">compatibility |
| report</a>. |
| </p> |
| |
| <h3>October 16th, 2008 - Release of SLF4J 1.5.4</h3> |
| |
| <p>This version corrects critical bugs. |
| </p> |
| |
| <p>Fixed <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=106">critical bug |
| 106</a>. In previous versions of SLF4J, if during the initial |
| binding phase, the underlying logging system's default configuration |
| created or invoked loggers, a <code>NullPointerException</code> |
| would be thrown. Refer to the <a |
| href="codes.html#substituteLogger">in error codes</a> document for a |
| fuller explanation.</p> |
| |
| <p>At initialization time, LoggerFactory will now check that the |
| version of the slf4j-binding matches that of slf4j-api. If there is |
| a mismatch a warning will be issued on the console. This should help |
| users identify SLF4J related problems more quickly.</p> |
| |
| <p>Improvements in documentation as well as fix for <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=102">packaging |
| problems</a> related to <em>slf4j-ext</em> module. |
| </p> |
| |
| <p>SLF4JBridgeHandler (part of jul-to-slf4j) now accounts for |
| loggers with resourceBundle as well parameters. This feature |
| requested by Darryl Smith in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=98">bug 98</a> and |
| by Jarek Gawor in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=103">bug |
| 103</a>.</p> |
| |
| <p>We now say that markers contain <em>references</em> to other |
| markers. We no longer talk about child markers. The javadocs of the |
| <code>Marker</code> interface have been updated to reflect this |
| change. Moreover, the <code>hasChildren()</code> method in the |
| Marker interface has been deprecated and a new method called |
| <code>hasReferences()</code> was added. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>September 12th, 2008 - Release of SLF4J 1.5.3</h3> |
| |
| <p>See also the <a href="compatibility.html#1_5_3">compatibility |
| report for this version</a>. |
| </p> |
| |
| <p>Added a new module called slf4j-ext for slf4j-extensions. See <a |
| href="extensions.html">its documentation</a> for further |
| details.</p> |
| |
| <p>Fixed <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=71">bug |
| 71</a> which was re-opened by Manfred Geiler. SLF4J loggers now |
| survive serialization. By survive serialization, we mean |
| that the deserialized logger instance are fully functional. </p> |
| |
| <p>The fix for <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=68">bug 68</a> as |
| implemented in version 1.5.1 was incomplete. Michael Furman supplied |
| a more complete fix which was incorporated in this release.</p> |
| |
| <p>When slf4j bridges, e.g. jcl-over-slf4j or log4j-over-slf4j, were |
| used in conjunction with JUL as the underlying logging system, |
| JDK14LoggerAdapter created a LogRecord even for disabled log |
| statements. This performance issue was reported in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=90">bug 90</a> by |
| Matthew Mastracci. |
| </p> |
| |
| <p>Added support for array values, including multi-dimensional |
| arrays, as parameters. For example,</p> |
| <p class="source">log.debug("{} {}", "A", new int[] {1, 2}});</p> |
| <p>will print as "A [1, 2]" instead of "A [I@6ca1c" as |
| previously. This enhancement was proposed by "lizongbo". |
| </p> |
| |
| <p>Parameter substitution code has been simplified. SLF4J now only |
| cares about the "{}" formatting anchor, that is the '{' character |
| immediately followed by '}'. Previously, the '{' had meaning on its |
| own. As a result of this change, users no longer need to escape the |
| '{' unless it is immediately followed by '}'. Existing messages |
| which escaped standalone '{' character will be printed with a |
| preceding backslash. However, no data loss in the printed messages |
| will occur. |
| </p> |
| |
| <p>Added missing <code>getInstance</code> methods to the |
| <code>Category</code> class in the log4j-over-slf4j module, fixing |
| <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=95">bug 95</a> |
| reported by Michael Rumpf.</p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>June 8th, 2008 - Release of SLF4J 1.5.2</h3> |
| |
| <p>Improvements to SLF4J documentation as well as fix of <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=88">packaging |
| problems</a> related to <em>jul-to-slf4j.jar</em> and |
| <em>jcl104-over-slf4j.jar</em>. |
| </p> |
| |
| <h3>June 5th, 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>jcl<b>104</b>-over-slf4j</em> module was renamed as |
| <em>jcl-over-slf4j</em>. SLF4J will no longer ship with |
| <em>jcl104-over-slf4j.jar</em> but with <em>jcl-over-slf4j.jar</em>. |
| The related work responds to enhancement request discussed in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=85">bug 85</a> as |
| reported by Niklas Gustavsson. |
| </p> |
| |
| <p>The <em>slf4j-jcl</em> binding now depends on commons-logging |
| version 1.1.1 instead of the older 1.0.4</p> |
| |
| |
| <p>Added a java.util.logging to SLF4J bridge as requested in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=38">bug 38</a> by |
| Christian Stein, David Smiley, Johan Ferner, Joern Huxhorn and |
| others. |
| </p> |
| |
| <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 |
| present (lacking the TRACE level), in order to avoid |
| NoSuchMethodError exceptions, the SLF4J's |
| <code>Log4jLoggerAdapter</code> will map the TRACE level as DEBUG. |
| </p> |
| |
| |
| <p>Fixed <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=78">bug |
| 78</a> reported by Venu Thachappilly. If the argument array passed |
| to a Logger printing method (debug, info, etc.) was null, a |
| <code>NullPointerException</code> was thrown. With the correction, |
| the messagePattern is returned as is, without parameter |
| substitution. |
| </p> |
| |
| |
| <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> |
| |
| <p>Fixed <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=74">bug |
| 74</a>, an endless recursion problem in Marker.contains method, |
| reported by Michael Newcomb. Also added he |
| <code>getDetachedMarker</code> method to <code>IMarkerFactor</code> |
| and <code>MarkerFactory</code> classes which was indirectly |
| requested in bug 74. |
| </p> |
| |
| <p>Added the methods <code>getLevel()</code> and |
| <code>getEffectiveLevel()</code> to the <code>Category</code> class |
| in log4j-over-slf4j. This addition was requested in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=74">bug 74</a> by |
| Michael Newcomb. |
| </p> |
| |
| <p>The <a href="migrator.html">SLF4J Migrator</a> |
| tool has been improved to support migration from JUL to SLF4J. |
| </p> |
| |
| <p>In <code>MarkerIgnoringBase</code> class, corrected mapping of |
| trace methods with markers to their equivalents without marker |
| data. Previously, the mapping was trace to debug. The incorrect |
| mapping affected only calls to the trace method with |
| markers. Interestingly enough, this bug was picked up by new unit |
| tests and has not been reported as a bug by our users. |
| </p> |
| |
| |
| <h3>February 26th, 2008 - Release of SLF4J 1.5.0</h3> |
| |
| |
| <p>A tool called <a href="migrator.html">SLF4J Migrator</a> now |
| ships with SLF4J. It can help you migrate your project using JCL or |
| log4j to use SLF4J instead. |
| </p> |
| |
| <p>Fixed <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=61">bug |
| 61</a> reported by Christopher Sahnwaldt. It is now possible to |
| place a backslash in front of a formatting anchor, by escaping the |
| backslash. For example, the call to |
| <code>MessageFormatter.format("C:\\\\{}", "foo")</code> will now |
| correctly return "C:\\foo". The backslash character needs to be |
| escaped in Java, which leads to four backslashes. |
| </p> |
| |
| |
| <p>Fixed <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=63">bug |
| 63</a> reported by Maarten Bosteels. SLF4J now supports MDC for |
| <code>java.util.logging</code> package. |
| </p> |
| |
| <p>Fixed <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=64">bug |
| 64</a> reported by Michal Bernhard. The log4j binding will now alert |
| the user if she uses SLF4J with a version of log4j earlier than 1.2.12. |
| </p> |
| |
| <p>Fixed <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=65">bug |
| 65</a> reported by Ben Gidley. Superfluous |
| <version>${parent.version}</version> lines have been |
| removed from pom.xml files. These lines reportedly confuse certain |
| Maven repositories. |
| </p> |
| |
| <p>In the <code>org.apache.log4j.Category</code> class, as |
| implemented in the log4j-over-slf4j module, calls to the printing |
| trace() are now correctly mapped to SLF4J's trace() printing method |
| (instead of debug()). Superfluous printing methods with the |
| signature <code>xxxx(Object, Object)</code> and <code>xxxx(String, |
| Object, Object)</code> have been removed. |
| </p> |
| |
| <p>Fixed <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=67">bug |
| 67</a> reported by Chris Custine. The manifest file for |
| jcl104-over-slf4j now correctly declares version 1.0.4 for the |
| exported JCL packages. |
| </p> |
| |
| |
| <p>Fixed <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=69">bug |
| 69</a> reported by Joern Huxhorn, who graciously supplied the fix as |
| well as a test case. The <code>add</code> method in |
| <code>BasicMarker</code> class now correctly prevents multiple |
| addition of the same child. Moreover, the <code>remove</code> method |
| now correctly removes the specified child marker. |
| </p> |
| |
| <p>Fixed <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=41">bug |
| 41</a> reported by Sebastian Davids. The manifest files of various |
| projects now mention J2SE-1.3 as the required execution |
| environment. |
| </p> |
| |
| <p>Fixed <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=71">bug |
| 71</a> reported by Manfred Geiler. The SLF4JLog and |
| SLF4JLocationAwareLog classes are now serializable solving |
| serialization problems encountered with certain libraries which |
| attempt to serialize JCL log instances. |
| </p> |
| |
| <p>Fixed <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=73">bug |
| 73</a> reported by Oleg Smirsky. A "Fragment-Host: slf4j.api" line |
| has been added to every MANIFEST.MF file exporting |
| <code>org.slf4j.impl</code>. |
| </p> |
| |
| |
| <p>Fixed <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=72">bug |
| 72</a> reported by Ian Carr. Performance issues with slf4j-jdk14 for |
| disabled log statements have now been corrected. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>August 20th, 2007 - Release of SLF4J 1.4.3</h3> |
| |
| <p>Fixed <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=60">bug |
| 60</a> as reported by Costin Leau. OSGI manifest entries now declare |
| the correct SLF4J version. |
| </p> |
| |
| <p>Clarified the behavior of the various methods methods in the MDC |
| class with respect to "null" parameters. This was requested in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=58">bug 58</a> by |
| Sebastian Davids. |
| </p> |
| |
| <p>Removed the slf4j-archetype module because nobody seems to have a |
| use for it.</p> |
| |
| <h3>July 12th, 2007 - Release of SLF4J 1.4.2</h3> |
| |
| <p>The <a href="log4j-over-slf4j.html">log4j-over-slf4j</a> module |
| has been moved back into SLF4J. Originally, this module was part of |
| SLF4J and was moved into logback due to the lack of MDC support in |
| SLF4J. With version 1.4.2 and the addition of MDC support in SLF4J |
| 1.4.1, log4j-over-slf4j returns to its original home. Note that the |
| previous name of the module was <a |
| href="http://logback.qos.ch/bridge.html">log4j-bridge</a>. |
| </p> |
| |
| <p>Addition of the <code>getMDCAdapter</code> method to |
| org.slf4j.MDC class. This allows access to the actual MDC |
| implementation which can on occasion come in very handy. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| |
| |
| <h3>July 4th, 2007 - Release of SLF4J 1.4.1</h3> |
| |
| |
| <p>SLF4J now supports <a href="manual.html#mdc">Mapped Diagnostic |
| Contexts</a> (MDC) as requested by Andy Gerweck and Steve Ebersole |
| in <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=49">bug |
| 49</a>. |
| </p> |
| |
| <p>Fixed <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=53">bug |
| 53</a> as reported by Heinrich Nirschl. The public method |
| <code>trace(String)</code> in the <code>Log4jLoggerAdapter</code> |
| class incorrectly called the underlying log4j logger with level DEBUG |
| instead of TRACE. |
| </p> |
| |
| <p>Fixed various documentation related errors kindly reported by |
| Mark Vedder. |
| </p> |
| |
| |
| <hr noshade="noshade" size="1"/> |
| |
| |
| <h3>May 16th, 2007 - Release of SLF4J 1.4.0</h3> |
| |
| |
| <p>In response to many user requests over time, the TRACE level has |
| been added to <a |
| href="api/org/slf4j/Logger.html">org.slf4j.Logger</a> |
| interface. Please also see the <a href="faq.html#trace">FAQ entry |
| discussing</a> the TRACE level. |
| </p> |
| |
| |
| <p>Fixed <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=47">bug |
| 47</a> as reported by Terry Todd. In previous a SLF4J release the |
| <code>org.apache.commons.logging.impl.SLF4FLogFactory</code> class |
| was renamed as <code>SLF4JLogFactory</code>. The |
| <em>META-INF/services/org.apache.commons.logging.LogFactory</em> |
| resource file had not reflected this change. It does now. |
| </p> |
| |
| |
| <p>Eric Yung <a |
| href="http://www.slf4j.org/pipermail/user/2007-April/000327.html">reported</a> |
| that Apache commons-configuration access certain commons-logging |
| classes, namely <code>org.apache.commons.logging.impl.NoOpLog</code> |
| and SimpleLog, directly. Following Eric's suggestion, |
| jcl104-over-slf4j now includes the aforementioned classes. |
| </p> |
| |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>April 15th, 2007 - Release of SLF4J 1.3.1</h3> |
| |
| |
| <p>In response to a <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=39">enhancement |
| request</a> made by Michael Newcomb, a marker can now be detached |
| from the internal list of the <code>MarkerFactory</code> that |
| generated it. |
| </p> |
| |
| <p>Fixed a silly but nonetheless annoying bug where log request of |
| level ERROR made through jcl104-over-slf4j would log twice. This bug |
| was <a |
| href="http://www.slf4j.org/pipermail/user/2007-April/000323.html">reported</a> |
| and precisely described by Andrew Cooke. |
| </p> |
| |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>February 25th, 2007 - Release of SLF4J 1.3.0</h3> |
| |
| <p>This release consists of rearrangement of classes among |
| projects. More specifically, the |
| <code>org.slf4j.LoggerFactory</code> class is now packaged within |
| the <em>slf4j-api.jar</em> file instead of the various slf4j |
| bindings. <b>It follows that client code needs to depend on only |
| slf4j-api in order to compile, while the various slf4j bindings are |
| only needed as runtime dependencies.</b> See also the <a |
| href="faq.html#maven2">Maven2-related FAQ entry</a>. Given the |
| practical significance of this change, we highly recommend that |
| library-authors upgrade to version 1.3 at their earliest |
| convenience. |
| </p> |
| |
| <p><a href="http://bugzilla.slf4j.org/show_bug.cgi?id=23">Bug number |
| 23</a> has been fixed, at the cost of minor and backward compatible |
| changes. In other words, jcl104-over-slf4j now preserves caller |
| location information. |
| </p> |
| |
| <p>It is now possible to obtain the root logger of the underlying |
| logging implementation by requesting a logger named |
| "ROOT". This feature was requested by Sebastien Davids |
| in <a href="http://bugzilla.slf4j.org/show_bug.cgi?id=35">bug |
| report 35</a>. </p> |
| |
| <p>For an exact list of changes please refer to the <a |
| href="changes/changes-1.3.txt">1.3.0 compatibility report</a> file |
| as generated by clirr.</p> |
| |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>January 24th, 2007 - Release of SLF4J 1.2</h3> |
| <p>This release includes several modifications to make SLF4J |
| an <a href="http://www.osgi.org/">OSGi</a>-friendly framework. |
| The modules' MANIFEST.MF files now include |
| OSGi metadata. Regarding these improvements, and OSGi in general, the |
| SLF4J project is happy to welcome John E. Conlon as a new committer. |
| </p> |
| |
| <p>Marker objects are now Serializable. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>December 21st, 2006 - Release of SLF4J 1.1.0 (final)</h3> |
| |
| <p>This release consists of minor bug fixes and documentation |
| changes. More importantly, the log4j-over-slf4j module has been |
| moved to the logback project, under the name <a |
| href="http://logback.qos.ch/bridge.html">log4j-bridge</a>. |
| </p> |
| |
| <p>Added the file "org.apache.commons.logging.LogFactory" under |
| META-INF/services directory which went missing in the 1.1.0 series |
| of SLF4J. This fixes a compatibility problem with Apache Axis which |
| uses its own discovery mechanism, namely, commons-discovery version |
| 0.2. The problem was reported in bug <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=33">report 33</a> |
| by David Varnes. |
| </p> |
| |
| <p>The file jcl104-over-slf4j.jar had various entries missing in its |
| MANIFEST.MF file, as reported by Boris Unkel in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=30">bug number |
| 30</a>. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>November 16th, 2006 - Release of SLF4J 1.1.0-RC1</h3> |
| |
| <p>This release consists of packaging related bug fix in addition to |
| minor documentation changes. |
| </p> |
| |
| <p>Contrary to RC0, RC1 no longer uses SNAPSHOT versions for the |
| slf4j-parent pom. The solution to <a |
| href="http://ceki.blogspot.com/2006/11/solution-to-maven2-version-number.html">Maven |
| version problem</a> does not work for public projects such as SLF4J |
| because SNAPSHOTs are not allowed on ibiblio. |
| </p> |
| |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>November 4th, 2006 - Release of SLF4J 1.1.0-RC0</h3> |
| |
| <p>This release consists of bug fixes. Moreover, since the major |
| packaging related changes in 1.1.0-beta0 seem to work well, this |
| release is marked as RC0.</p> |
| |
| <p>Fixed the JDK 1.5 dependency for the SLF4J build, as reported by |
| Boris Unkel in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=28">bug number |
| 28</a>. SLF4J now explicitly declares a dependency on JDK 1.4 in its |
| pom.xml file. |
| </p> |
| |
| <p>Fixed an incorrect reference to the logback project in slf4j-api |
| pom file. This bug was reported by Boris Unkel in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=29">bug number |
| 29</a>. |
| </p> |
| |
| <p>Fixed a synchronization problem in factories of almost all SLF4J |
| bindings. This bug was reported independently by Howard M. Lewis Ship |
| and Boris Unkel in bug reports <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=26">26</a> and |
| respectively <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=26">27</a>. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>September 7th, 2006 - Release of SLF4J 1.1.0-beta0</h3> |
| |
| <p>Release 1.1.0-beta0 is a relatively important release with a |
| refactoring of the way class files are organized in jar files. In |
| previous releases, each binding was self-contained in a single jar |
| file. In this release, each and every binding depends on |
| <em>slf4j-api.jar</em> which contains the bulk of the classes |
| required to use SLF4J, except for one or two adapter classes. Only |
| the adapter classes are now shipped with each specific binding jar |
| as appropriate for the underlying logging system.. |
| </p> |
| |
| <p>This release is built using Maven instead of Ant. As for the java |
| code, it has not been changed.</p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>June 8th, 2006 - Release of SLF4J 1.0.2</h3> |
| |
| <p>Release 1.0.2 is a maintenance release containing bug fixes |
| only.</p> |
| |
| <ul> |
| |
| <li>Fixed <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=22">bug number |
| 22</a> reported by Bjorn Danielsson. This version of the SLF4J API |
| will no longer systematically throw an exception when the |
| <code>o.a.c.l.impl.SLF4FLogFactory#release()</code> method is |
| invoked. Instead, the <code>release()</code> method will issue a |
| <a href="http://www.slf4j.org/codes.html">warning</a>. |
| |
| </li> |
| |
| </ul> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>May 1st, 2006 - Release of SLF4J 1.0.1</h3> |
| |
| <p>Release 1.0.1 is a maintenance release containing bug fixes |
| only.</p> |
| |
| <ul> |
| |
| <li>Fixed <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=20">bug number |
| 20</a> reported by Steve Bate. <code>JDK14LoggerAdapter</code> |
| will now correctly relay the logger name to the underlying JDK 14 |
| logging system. |
| </li> |
| |
| <li>Added the file "org.apache.commons.logging.LogFactory" under |
| META-INF/services directory in the jcl104-over-slf4j jar |
| file. This fixes a compatibility problem with Apache Axis which |
| uses its own discovery mechanism, namely, commons-discovery |
| version 0.2. The bug was reported by Dave Wallace. |
| </li> |
| |
| </ul> |
| |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>March 8th, 2006 - Release of SLF4J 1.0</h3> |
| |
| <p>This is release labeled as 1.0 (final) contains few relatively |
| minor changes: |
| </p> |
| |
| <ul> |
| <li>As <a |
| href="http://marc.theaimsgroup.com/?t=114063163800004">discussed</a> |
| on the slf4j user list, <code>SimpleLogger</code> now directs its |
| output to stderr instead of stdout. |
| </li> |
| |
| <li>Modified <code>JDK14LoggerAdapter</code> so that caller |
| information is now correctly printed, as reported in <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=13">bug 13</a> by |
| Peter Royal. |
| </li> |
| |
| <li>Minor additions to the Marker interface.</li> |
| |
| </ul> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>February 4th, 2006 - Release of SLF4J 1.0-RC6 and NLOG4J |
| 1.2.22</h3> |
| |
| <p>The <code>MarkingLogger</code> interface has been removed and its |
| contents merged into <code>org.slf4j.Logger</code>. This change |
| should not adversely affect end-users. However, SLF4J bindings need |
| to be updated. This has been done for all the bindings shipped with |
| SLF4J distribution as well as NLOG4J. As for x4juli, the update is |
| planned for its next release. |
| </p> |
| |
| <p>The merge between the <code>MarkingLogger</code> and |
| <code>Logger</code> interfaces has been motivated by the need to |
| allow end-users to easily switch between logging systems that |
| support markers and those that do not. |
| </p> |
| |
| <p>Added a default instance to SimpleLoggerFactory to serve as a |
| last resort fallback mechanism. This instance is designed to be used |
| by a very specific group of users, namely for those developing |
| logging systems (e.g. log4j or LOGBack). It is not intended for |
| end-users of the SLF4J API. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>January 9th, 2006 - Release of SLF4J 1.0-RC5 and NLOG4J |
| 1.2.21</h3> |
| |
| <p>A maintenance release correcting bugs <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=11">#11</a> and <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=12">#12</a> and in |
| general improved resilience to null input parameters across |
| implementations. Many thanks to Boris Unckel and Kenneth for |
| reporting the null input issue. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>December 27th, 2005 - Release of SLF4J 1.0-RC4 and NLOG4J |
| 1.2.20</h3> |
| |
| |
| <p>The printing methods in <code>org.slf4j.Logger</code> interface |
| now support passing 3 or more parameters in an <code>Object</code> |
| array. This was a frequently requested feature missing in previous |
| versions of SLF4J. |
| </p> |
| |
| <p>NLOG4J 1.2.20 reflects the addition of new methods in the |
| <code>org.slf4j.Logger</code> interface.</p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>December 8th, 2005 - Release of SLF4J 1.0-RC3</h3> |
| |
| <p>Maintenance release fixing reported bugs <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=6">#6</a> and <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=7">#7</a>. |
| </p> |
| |
| |
| <h3>November 28th, 2005 - Release of SLF4J 1.0-RC2</h3> |
| |
| <p>In response to a request by Greg Wilkins, this release adds the |
| jar file <em>slf4j-jcl.jar</em>, an SLF4J binding for JCL. Please |
| read the <a href="manual.html#gradual">gradual migration section</a> |
| in the manual for more details. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>November 21st, 2005 - Release of SLF4J 1.0-RC1</h3> |
| |
| <p>A maintenance release correcting bugs <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=4">#4</a> and <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=5">#5</a>. Many |
| thanks to Christian Beil for accurately reporting bug #4. |
| </p> |
| |
| <p>There has been also an effort to minimize the file sizes of the |
| various jar files produced by SLF4J, resulting in jar files |
| approximately 40% smaller than in version 1.0beta9. |
| </p> |
| |
| <p>Given that the SLF4J API is now deemed stable, this release is |
| marked as RC1, that is release candidate number 1. |
| </p> |
| |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>October 19th, 2005 - Release of SLF4J 1.0-beta9</h3> |
| |
| <p>The SLF4J distribution now includes two distinct bindings |
| <em>slf4j-log4j12.jar</em> and <em>slf4j-log4j13.jar</em> in order |
| to differentiate between log4j version 1.2 and version 1.3. This |
| distinction is absolutely necessary because log4j 1.2 and 1.3 are |
| not run-time compatible, although they are mostly compile-time |
| compatible. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>October 19th, 2005 - Release of SLF4J 1.0-beta8 and NLOG4J 1.2.18</h3> |
| |
| |
| <p>Added a new SLF4J binding, <em>slf4j-log4j.jar</em>, intended to |
| be used in conjunction with vanilla <em>log4j.jar</em>, as |
| distributed by the <a href="http://logging.apache.org">Apache |
| Logging Services</a> project. The slf4j-log4j binding is quite |
| similar in structure to the JDK 1.4 binding that existed |
| previously. |
| </p> |
| |
| <p>The slf4j-log4j binding addresses compatibility problems which |
| arose when copies of both <em>log4j.jar</em> and <em>nlog4j.jar</em> |
| lay on the class path, in particular when it was undesirable or |
| impossible to remove the preexisting <em>log4j.jar</em> file. |
| </p> |
| |
| <p>Methods in the <code>org.slf4j.Logger</code> interface related to |
| markers were moved to a separate super interface called <a |
| href="api/org/slf4j/MarkingLogger.html"> |
| <code>org.slf4j.MarkingLogger</code></a>. This refactoring reduces |
| the weight of the <a href="api/org/slf4j/Logger.html"> |
| <code>Logger</code></a> interface. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>August 28th, 2005 - Release of SLF4J 1.0-beta7 and NLOG4J 1.2.17</h3> |
| |
| <p>Spurred by <a |
| href="http://bugzilla.slf4j.org/show_bug.cgi?id=3">bug report |
| #3</a>, SLF4J binding code has been refactored and |
| simplified. Logging systems implementing SLF4J interfaces have to |
| have less work in order to bind with SLF4J. Moreover, these changes |
| have no incidence on the published interface of SLF4J. |
| </p> |
| |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>August 26th, 2005 - Release of SLF4J 1.0-beta6</h3> |
| |
| <p>To ease migration to SLF4J from JCL, this release includes a jar |
| file called <em>jcl-over-slf4j-1.0.4.jar</em>. This jar file can be |
| used as drop-in replacement for JCL version 1.0.4. It implements the |
| public API of JCL using SLF4J underneath. |
| </p> |
| |
| <p>Thus, you can immediately benefit from the advantages of SLF4J |
| without waiting for all the libraries you depend on to migrate to |
| SLF4J first.</p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>August 16th, 2005 - Release of NLOG4J 1.2.16</h3> |
| |
| <p>This release adds solves a compatibility problem between log4j |
| and nlog4j. Previous to this release, code compiled with log4j |
| would not run correctly with nlog4j. |
| </p> |
| |
| <p>With the fixes introduced in NLOG4J 1.2.16, code compiled with |
| log4j 1.2.x will run without problems when deployed using NLOG4j. |
| </p> |
| |
| <p>However, the inverse is not true. Code compiled with nlog4j can |
| only be deployed using nlog4j. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>August 12th, 2005 - Release of SLF4J 1.0-beta5 and NLOG4J |
| 1.2.15</h3> |
| |
| <p>This release adds support for the <a |
| href="api/org/slf4j/Marker.html">Marker</a> interface. Thus, log |
| statements can be decorated with Marker data allowing more |
| expressive power in the processing of log statements. |
| </p> |
| |
| <p>For the sake of IoC frameworks, <code>Logger</code> instances can |
| new be queried for their <a |
| href="api/org/slf4j/Logger.html#getName()">name</a>. |
| </p> |
| |
| <p>With the addition of markers, sub-domains are no longer |
| needed.</p> |
| |
| <p>The <code>LoggerFactoryAdapter</code> has been simplified and |
| renamed as <a |
| href="api/org/slf4j/ILoggerFactory.html"><code>ILoggerFactory</code></a>. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>July 5th, 2005 - Release of NLOG4J 1.2.14</h3> |
| |
| <p>This release fixes compatibility problems between NLOG4J and |
| Jakarta Commons Logging. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>June 28th, 2005 - Release of SLF4J 1.0-beta4 and NLOG4J |
| 1.2.13</h3> |
| |
| <p>Following discussions on the SLF4J developers list, the |
| signatures of the printing methods in <a |
| href="api/org/slf4j/Logger.html"><code>org.slf4j.Logger</code></a> |
| interface have been modified to admit messages of type |
| <code>String</code> instead of type <code>Object</code> as |
| previously. The current set of printing methods is listed below. |
| </p> |
| |
| <pre class="source"> |
| void debug(String msg); |
| void debug(String format, Object arg); |
| void debug(String format, Object arg1, Object arg2); |
| void debug(String msg, Throwable t); |
| |
| void error(String msg); |
| void error(String format, Object arg;) |
| void error(String format, Object arg1, Object arg2); |
| void error(String msg, Throwable t); |
| |
| void info(String msg); |
| void info(String format, Object arg); |
| void info(String format, Object arg1, Object arg2); |
| void info(String msg, Throwable t); |
| |
| void warn(String msg); |
| void warn(String format, Object arg); |
| void warn(String format, Object arg1, Object arg2); |
| void warn(String msg, Throwable t); </pre> |
| |
| |
| <p>NLOG4J release 1.2.13 reflects changes in the SLF4J API. |
| </p> |
| |
| <p>You can download SLF4J and NLOG4J, including full source code, |
| class files and documentation on our <a |
| href="download.html">download page</a>. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>May 17th, 2005 - SLF4J version 1.0-beta-3 released</h3> |
| |
| <p>In response to user comments, the <code>org.slf4j.ULogger</code> |
| interface has been renamed as <code>org.slf4j.Logger</code>. |
| </p> |
| |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>May 17th, 2005 - NLOG4J version 1.2.12 released</h3> |
| |
| <p>SLF4J.ORG is proud to release NLOG4J 1.2.12, a log4j-replacement |
| with native SLF4J API support. Except for users of LF5, chainsaw or |
| <code>NTEvenAppender</code>, NLOG4J should be considered as a 100% |
| compatible, drop-in replacement for log4j version 1.2.9. |
| </p> |
| |
| <p>This release reflects changes in the SLF4J API, i.e renaming of |
| <code>org.slf4j.ULogger</code> interface as |
| <code>org.slf4j.Logger</code>. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>May 17th, 2005 - SLF4J version 1.0-beta-3 released</h3> |
| |
| <p>SLF4J.ORG is proud to release SLF4J 1.0-beta-3. In response to |
| user comments, the <code>org.slf4j.ULogger</code> interface has been |
| renamed as <code>org.slf4j.Logger</code>. |
| </p> |
| |
| <p>You can download SLF4J, including full source code, class files |
| and documentation on our <a href="download.html">download page</a>. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>May 14th, 2005 - NLOG4J version 1.2.11 released</h3> |
| |
| <p>SLF4J.ORG is proud to release NLOG4J 1.2.11, a log4j-replacement |
| with native SLF4J API support. Except for users of LF5, chainsaw or |
| <code>NTEvenAppender</code>, NLOG4J should be considered as a 100% |
| compatible, drop-in replacement for log4j version 1.2.9. |
| </p> |
| |
| <p>You can download NLOG4J version 1.2.11, including full source |
| code, class files and documentation on our <a |
| href="download.html">download page</a>. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>May 4th, 2005 - SLF4J version 1.0-beta-2 released</h3> |
| |
| <p>SLF4J.ORG is proud to release SLF4J 1.0-beta-2. This release |
| contains cosmetic or javadoc changes. For example, the project has a |
| new logo. |
| </p> |
| |
| <p>You can download SLF4J version 1.0-beta2, including full source |
| code, class files and documentation on our <a |
| href="download.html">download page</a>. |
| </p> |
| |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>1 May 2005 - not-log4j-1.2.10 released</h3> |
| |
| <p>Subsequent to the recall of log4j 1.2.10, SLF4J.ORG releases |
| non-log4j-1.2.10 for those interested in SLF4J support in log4j. |
| </p> |
| |
| <p>You can download not-log4j version 1.2.10, including full source |
| code, class files and documentation on our <a |
| href="download.html">download page</a>. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| |
| <h3>22 April 2005 - SLF4J project goes live</h3> |
| |
| <p>The SLF4J project site, including SVN repositories go |
| live. Users can download SLF4J version 1.0-beta1. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>15 April 2005 - start of work on SLF4J source code</h3> |
| |
| <p>Start of work on the SLF4j source code. |
| </p> |
| |
| <hr noshade="noshade" size="1"/> |
| |
| <h3>13 April 2005 - start of work on SLF4J project</h3> |
| |
| <p>Launch of the SLF4J project. Work has begun on the web-site, svn |
| repositories as well as the source code. |
| </p> |
| |
| |
| <script src="templates/footer.js" type="text/javascript"></script> |
| |
| </div> |
| </body> |
| </html> |