From: Stefan Bund Date: Mon, 20 Sep 2010 19:48:51 +0000 (+0200) Subject: initial commit X-Git-Url: http://g0dil.de/git?a=commitdiff_plain;p=java-logging.git initial commit --- 6fb36bd41f967baf1e314ffbcb3af81a0799258d diff --git a/LICENSE.txt b/LICENSE.txt new file mode 100644 index 0000000..75b5248 --- /dev/null +++ b/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. diff --git a/NOTICE.txt b/NOTICE.txt new file mode 100644 index 0000000..5554dfc --- /dev/null +++ b/NOTICE.txt @@ -0,0 +1,6 @@ +Apache Commons Logging +Copyright 2003-2007 The Apache Software Foundation + +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). + diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt new file mode 100644 index 0000000..5989dbb --- /dev/null +++ b/RELEASE-NOTES.txt @@ -0,0 +1,166 @@ + + +$Id: RELEASE-NOTES.txt 597240 2007-11-21 22:50:06Z dennisl $ + + Commons Logging Package + Version 1.1.1 + Release Notes + +INTRODUCTION: +============ + +This release of Apache Commons Logging is a maintenance release, with just a +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 +to 1.1 and source set to 1.2. Commons Logging may work on some +augmented 1.1 series JREs but it is recommended that those wish to run +on 1.1 JREs download the source and create a custom implementation by +stripping out all the complex classloader management code. + +For further details, please see the Apache Commons Logging website: + http://commons.apache.org/logging/ + +For the very latest news, hints, FAQs etc. please see the +Apache Commons Logging wiki site: + http://wiki.apache.org/commons/Logging + +Note that some containers (some versions of Apache Tomcat and JBoss in +particular) prevent webapps, ejbs, etc from overriding the commons-logging +implementation provided by the container. This means that bundling this +updated implementation with a deployed application may not have any effect. +See the commons-logging site and/or the wiki for more information. + +== New Features Since 1.1.0 == + +None. + +== Incompatibilities == + +The protected method LogFactory.getContextClassLoader has been reverted to pre-1.1 +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 +reverted to not using an AccessController; any user-level code that needs to obtain +a context classloader should itself create an AccessController, and call the +LogFactory.getContextClassLoader method via the doPrivileged method. This fixes a +potential security issue, where untrusted code could get access to the context +classloader if a signed Commons Logging library was in the classpath. + +== 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.1 but this has not been tested; the unit tests certainly don't run on +that version. + +== Distributed Jar Files == + +File commons-logging-nn.jar is the one most people will want. It provides the +base implementation and adapters to a number of popular logging libraries. + +File commons-logging-adapters-nn.jar includes only the adapters to various +concrete logging libraries. When commons-logging-nn.jar or +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 Commons +Logging distribution. This ensures that the core Log/LogFactory classes are only +deployed via one classloader, thus avoiding "Log4JLogger does not implement Log" +and similar problems. + +File commons-logging-api-nn.jar provides minimal adapters to external logging +libraries, just the internally implemented SimpleLog and NoOpLog classes +plus Jdk14Logger (which is currently required by Apache Tomcat). + +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 +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 +Commons Logging who recompile the source-code but who may not be able to +recompile against the full set of supported adapters; such projects should be +able to at least recreate an equivalent of this jar file. + +== General Notes == + +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 Commons +Logging library, but obviously the process of examining the latest source code, +and of creating patches for Commons Logging has now changed. Please see the +Apache Commons website for details (http://commons.apache.org/). + +The Apache Commons project has now moved to using the Apache JIRA installation +as its bugtracking system (formerly, the Apache Bugzilla installation was used). + +All source files for this release have been updated to reflect the new Apache +Software Foundation licensing rules. The terms and conditions are unaltered; +this merely affects how those are presented in the source files. See + http://www.apache.org/legal/src-headers.html + +This release can be built/tested with Maven 2.0.x as well as Ant. Note that +building with Maven 1.x is no longer supported. The files used to build Commons +Logging with Maven 1.x will be removed in a future version of Commons Logging. + +== Bugs Fixed == + +* LOGGING-106: Commons Logging 1.1 was completely unusable under a security + policy that prevented access to system properties. Even signing/authorising + the Commons Logging library was not sufficient. This has been fixed by (a) + catching SecurityException and falling back to a sensible default, and (b) + using AccessController so Commons Logging can be granted privileges without + needing the caller to have them too. + +* LOGGING-107: Commons Logging 1.1 auto-discovery failed under a security + policy that prevented calls to ClassLoader.getParent. Signing/authorising the + Commons Logging library was not sufficient as an AccessController was not used. + This has been fixed by catching SecurityException and using an AccessController. + +* LOGGING-111, LOGGING-114: Show the contents of chained exceptions, to make + debugging easier, in particular when using Commons Logging together with Log4J. + +* LOGGING-113: pom.xml in maven repository does not list dependencies as optional. + +* LOGGING-115: NPE thrown due to exception message logging. + +* LOGGING-117: Unit tests fail on linux with java16. + +* LOGGING-118: Generate source and binary archives. + +* MEV-392 (http://jira.codehaus.org/browse/MEV-392) + As Commons Logging didn't provide a Maven2 pom.xml file, one was helpfully + created by people not involved with the commons-logging project and published + to the standard maven repositories. Unfortunately this pom declared normal + dependencies on all the logging libraries that are supported by the core + 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 + automatically included in projects that depend on Commons Logging 1.1.1. + +* (no bug#): Fix thread-safety bug (SimpleDateFormat.format is not thread-safe). + Thanks to Martin Wilson of bright-interactive for the bug report. + +* (no bug#): Security issue regarding access to context classloader (see + incompatibilities section above). + +DEPRECATIONS: +============ + + (These are carried forward from Version 1.0.4) + +[LogSource] Previously deprecated, replaced by LogFactory. + diff --git a/commons-logging-1.1.1.jar b/commons-logging-1.1.1.jar new file mode 100644 index 0000000..8758a96 Binary files /dev/null and b/commons-logging-1.1.1.jar differ diff --git a/commons-logging-adapters-1.1.1.jar b/commons-logging-adapters-1.1.1.jar new file mode 100644 index 0000000..2f23c35 Binary files /dev/null and b/commons-logging-adapters-1.1.1.jar differ diff --git a/commons-logging-api-1.1.1.jar b/commons-logging-api-1.1.1.jar new file mode 100644 index 0000000..bd45116 Binary files /dev/null and b/commons-logging-api-1.1.1.jar differ