1
0

Replace "JCL" with "Commons Logging".

Reformat sligthly because "Commons Logging" is wider than "JCL".

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/logging/trunk@569145 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Dennis Lundberg
2007-08-23 20:56:51 +00:00
parent b8942956c0
commit 8b1aa6bc00

View File

@@ -26,8 +26,8 @@ $Id$
INTRODUCTION: INTRODUCTION:
============ ============
This release of Apache Commons Logging (JCL) is a maintenance release, with This release of Apache Commons Logging is a maintenance release, with just a
just a couple of fixes for using JCL under restrictive security policies. couple of fixes for using Commons Logging under restrictive security policies.
All core classes were compiled with Maven using a 1.4.x JDK, with target set All core classes were compiled with Maven using a 1.4.x JDK, with target set
to 1.1 and source set to 1.2. Commons Logging may work on some to 1.1 and source set to 1.2. Commons Logging may work on some
@@ -57,15 +57,15 @@ None.
The protected method LogFactory.getContextClassLoader has been reverted to pre-1.1 The protected method LogFactory.getContextClassLoader has been reverted to pre-1.1
behaviour. In earlier releases, this method did not use an AccessController when behaviour. In earlier releases, this method did not use an AccessController when
obtaining the context classloader. In version 1.1 it did. In this release, it has obtaining the context classloader. In version 1.1 it did. In this release, it has
reverted to not using an AccessController; any user-level code that needs to obtain a reverted to not using an AccessController; any user-level code that needs to obtain
context classloader should itself create an AccessController, and call the a context classloader should itself create an AccessController, and call the
LogFactory.getContextClassLoader method via the doPrivileged method. This fixes a LogFactory.getContextClassLoader method via the doPrivileged method. This fixes a
potential security issue, where untrusted code could get access to the context potential security issue, where untrusted code could get access to the context
classloader if a signed JCL library was in the classpath. classloader if a signed Commons Logging library was in the classpath.
== Dependencies == == Dependencies ==
Commons-logging has no mandatory dependencies. Commons Logging has no mandatory dependencies.
Java 1.2 and later are supported. It may be possible to use this release with Java 1.2 and later are supported. It may be possible to use this release with
java 1.1 but this has not been tested; the unit tests certainly don't run on java 1.1 but this has not been tested; the unit tests certainly don't run on
@@ -79,8 +79,8 @@ base implementation and adapters to a number of popular logging libraries.
File commons-logging-adapters-nn.jar includes only the adapters to various File commons-logging-adapters-nn.jar includes only the adapters to various
concrete logging libraries. When commons-logging-nn.jar or concrete logging libraries. When commons-logging-nn.jar or
commons-logging-api-nn.jar is deployed in a container classpath, then this commons-logging-api-nn.jar is deployed in a container classpath, then this
adapters-only jar file should be deployed in the webapp, not the complete JCL adapters-only jar file should be deployed in the webapp, not the complete Commons
distribution. This ensures that the core Log/LogFactory classes are only Logging distribution. This ensures that the core Log/LogFactory classes are only
deployed via one classloader, thus avoiding "Log4JLogger does not implement Log" deployed via one classloader, thus avoiding "Log4JLogger does not implement Log"
and similar problems. and similar problems.
@@ -92,17 +92,17 @@ The file commons-logging-api-nn.jar may be used as a declared dependency for
projects that care about "transitive dependencies" and can't handle jar files projects that care about "transitive dependencies" and can't handle jar files
such as commons-logging-nn.jar which have "optional" dependencies depending on such as commons-logging-nn.jar which have "optional" dependencies depending on
how they are used. In addition, this jar file can be useful for "rebundlers" of how they are used. In addition, this jar file can be useful for "rebundlers" of
JCL who recompile the source-code but who may not be able to recompile against Commons Logging who recompile the source-code but who may not be able to
the full set of supported adapters; such projects should be able to at least recompile against the full set of supported adapters; such projects should be
recreate an equivalent of this jar file. able to at least recreate an equivalent of this jar file.
== General Notes == == General Notes ==
The Apache Commons project has migrated to the Subversion version control system The Apache Commons project has migrated to the Subversion version control system
(previously, CVS was used). There should be no effect on users of the JCL (previously, CVS was used). There should be no effect on users of the Commons
library, but obviously the process of examining the latest source code, and of Logging library, but obviously the process of examining the latest source code,
creating patches for JCL has now changed. Please see the Apache Commons and of creating patches for Commons Logging has now changed. Please see the
website for details (http://commons.apache.org/). Apache Commons website for details (http://commons.apache.org/).
The Apache Commons project has now moved to using the Apache JIRA installation The Apache Commons project has now moved to using the Apache JIRA installation
as its bugtracking system (formerly, the Apache Bugzilla installation was used). as its bugtracking system (formerly, the Apache Bugzilla installation was used).
@@ -118,16 +118,17 @@ Logging with Maven 1.x will be removed in a future version of Commons Logging.
== Bugs Fixed == == Bugs Fixed ==
* LOGGING-106: JCL 1.1 was completely unusable under a security policy that prevented * LOGGING-106: Commons Logging 1.1 was completely unusable under a security
access to system properties. Even signing/authorising the JCL library was not policy that prevented access to system properties. Even signing/authorising
sufficient. This has been fixed by (a) catching SecurityException and falling back the Commons Logging library was not sufficient. This has been fixed by (a)
to a sensible default, and (b) using AccessController so JCL can be granted catching SecurityException and falling back to a sensible default, and (b)
privileges without needing the caller to have them too. using AccessController so Commons Logging can be granted privileges without
needing the caller to have them too.
* LOGGING-107: JCL 1.1 auto-discovery failed under a security policy that prevented * LOGGING-107: Commons Logging 1.1 auto-discovery failed under a security
calls to ClassLoader.getParent. Signing/authorising the JCL library was not policy that prevented calls to ClassLoader.getParent. Signing/authorising the
sufficient as an AccessController was not used. This has been fixed by catching Commons Logging library was not sufficient as an AccessController was not used.
SecurityException and using an AccessController. This has been fixed by catching SecurityException and using an AccessController.
* LOGGING-111: Show the contents of chained exceptions, to make debugging easier, * LOGGING-111: Show the contents of chained exceptions, to make debugging easier,
in particular when using Commons Logging together with Log4J. in particular when using Commons Logging together with Log4J.
@@ -135,19 +136,20 @@ Logging with Maven 1.x will be removed in a future version of Commons Logging.
* LOGGING-113: pom.xml in maven repository does not list dependencies as optional. * LOGGING-113: pom.xml in maven repository does not list dependencies as optional.
* MEV-392 (http://jira.codehaus.org/browse/MEV-392) * MEV-392 (http://jira.codehaus.org/browse/MEV-392)
As JCL didn't provide a Maven2 pom.xml file, one was helpfully created by people As Commons Logging didn't provide a Maven2 pom.xml file, one was helpfully
not involved with the commons-logging project and published to the standard maven created by people not involved with the commons-logging project and published
repositories. Unfortunately this pom declared normal dependencies on all the logging to the standard maven repositories. Unfortunately this pom declared normal
libraries that are supported by the core JCL distribution, meaning they all get pulled dependencies on all the logging libraries that are supported by the core
into a project that declares a dependency on JCL1.1. This release now provides an Commons Logging distribution, meaning they all get pulled into a project that
declares a dependency on Commons Logging 1.1. This release now provides an
"official" pom.xml which declares these dependencies as optional so they aren't "official" pom.xml which declares these dependencies as optional so they aren't
automatically included in projects that depend on JCL 1.1.1. automatically included in projects that depend on Commons Logging 1.1.1.
* (no bug#): Fix thread-safety bug (SimpleDateFormat.format is not thread-safe). * (no bug#): Fix thread-safety bug (SimpleDateFormat.format is not thread-safe).
Thanks to Martin Wilson of bright-interactive for the bug report. Thanks to Martin Wilson of bright-interactive for the bug report.
* (no bug#): Security issue regarding access to context classloader (see incompatibilities * (no bug#): Security issue regarding access to context classloader (see
section above). incompatibilities section above).
DEPRECATIONS: DEPRECATIONS:
============ ============