$Id$ Commons Logging Package Version 1.0.4 Release Notes INTRODUCTION: ============ This document contains the release notes for this version of the Commons Logging package. It is primarily a service release for downstream users. The main emphasis maintenance and code cleanup release, with some new features including support for both the old 1.2.x series of Log4J releases and the new 1.3.x series of releases. The following paragraphs document changes since the previous release (version 1.0.3). The documentation (userguide and javadoc) has also been improved. NEW FEATURES: ============ [ALL FILES] This version of Commons Logging is released under the Apache License (Version 2.0). All source files have been modified to reflect this. [maven.xml] Added beginnings of a Maven-based build, primarily for the purpose of creating documentation consistent with Mavenized commons projects. The official build system for the software is still the Ant "build.xml" file. [AvalonLogger] Added AvalonLogger, which wraps the logger used by the Avalon framework. As with other implementations, this is compiled only if the appropriate dependencies are satisfied. This implementation is *NOT* Serializable [Jdk13LumberjackLogger] Added Jdk13LumberjackLogger, which wraps the implementation of the JSR-47 logging APIs (for JDKs before 1.4) provided by the SourceForge "lumberjack" project. [LogFactoryImpl] If an InvocationTargetException is returned during the creation of a new Log instance, unwrap the underlying cause and pass it in to the LogConfigurationException constructor. This will make the actual cause of the problem easier to diagnose. [LogFactoryImpl] If the isAssignableFrom() test fails because there is more than one instance of org.apache.commons.logging.Log visible in the class loader hierarchy, make the exception message that is reported explicitly state this, rather than the potentially misleading claim that an implementation class does not implement Log. [Log4JLogger] Changes to allow this logger to support both the existing 1.2.x series of releases and also the upcoming 1.3.x series of Log4J releases. [SimpleLog] Added support for setting date-time format. BUG FIXES: ========= [MANIFEST.MF] Remove reference to Log4J from the manifest classpath. [LogConfigurationException] Include root cause in the text of the message, if present. [LogFactory] Improve usability of error messages reporting configuration problems. [JDK14Logger] Implement Serializable, remove "final" declaration for easy subclassing. [Log4JLogger] Implement Serializable, remove "final" declaration for easy subclassing. [NoOpLogger] Implement Serializable, remove "final" declaration for easy subclassing. [SimpleLog] Make SimpleLog more friendly to the security manager in an applet environment, by swallowing any security exceptions when looking up system properties that are not accessible. [AvalonLogger] Fix NullPointerException when it when providing a default logger. DEPRECATIONS: ============ (These are carried forward from Version 1.0.3) [LogSource] Previously deprecated, replaced by LogFactory. [Log4jFactory] A proxy instance of this class was transparently created when Log4J logging was selected, yet it serves no useful purpose. The class is now deprecated, and the proxy instance is no longer created. [Log4JCategoryLog] This class has been replaced by Log4JLogger, which corresponds to the availability of the new Logger class in Log4J 1.2 and later.