Merge from master
This commit is contained in:
15
.gitattributes
vendored
15
.gitattributes
vendored
@@ -1 +1,16 @@
|
||||
# Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
# contributor license agreements. See the NOTICE file distributed with
|
||||
# this work for additional information regarding copyright ownership.
|
||||
# The ASF licenses this file to You 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.
|
||||
|
||||
* text=auto
|
||||
|
||||
28
.github/pull_request_template.md
vendored
Normal file
28
.github/pull_request_template.md
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one
|
||||
or more contributor license agreements. See the NOTICE file
|
||||
distributed with this work for additional information
|
||||
regarding copyright ownership. The ASF licenses this file
|
||||
to you 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.
|
||||
-->
|
||||
|
||||
Thanks for your contribution to [Apache Commons](https://commons.apache.org/)! Your help is appreciated!
|
||||
|
||||
Before you push a pull request, review this list:
|
||||
|
||||
- [ ] Read the [contribution guidelines](CONTRIBUTING.md) for this project.
|
||||
- [ ] Run a successful build using the default [Maven](https://maven.apache.org/) goal with `mvn`; that's `mvn` on the command line by itself.
|
||||
- [ ] Write unit tests that match behavioral changes, where the tests fail if the changes to the runtime are not applied. This may not always be possible but is a best-practice.
|
||||
- [ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
|
||||
- [ ] Each commit in the pull request should have a meaningful subject line and body. Note that commits might be squashed by a maintainer on merge.
|
||||
8
.github/workflows/codeql-analysis.yml
vendored
8
.github/workflows/codeql-analysis.yml
vendored
@@ -48,7 +48,7 @@ jobs:
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # 4.2.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
- uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a # v4.1.2
|
||||
- uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
|
||||
with:
|
||||
path: ~/.m2/repository
|
||||
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
|
||||
@@ -57,7 +57,7 @@ jobs:
|
||||
|
||||
# Initializes the CodeQL tools for scanning.
|
||||
- name: Initialize CodeQL
|
||||
uses: github/codeql-action/init@f09c1c0a94de965c15400f5634aa42fac8fb8f88 # 3.27.5
|
||||
uses: github/codeql-action/init@dd746615b3b9d728a6a37ca2045b68ca76d4841a # 3.28.8
|
||||
with:
|
||||
languages: ${{ matrix.language }}
|
||||
# If you wish to specify custom queries, you can do so here or in a config file.
|
||||
@@ -68,7 +68,7 @@ jobs:
|
||||
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
||||
# If this step fails, then you should remove it and run the build manually (see below)
|
||||
- name: Autobuild
|
||||
uses: github/codeql-action/autobuild@f09c1c0a94de965c15400f5634aa42fac8fb8f88 # 3.27.5
|
||||
uses: github/codeql-action/autobuild@dd746615b3b9d728a6a37ca2045b68ca76d4841a # 3.28.8
|
||||
|
||||
# ℹ️ Command-line programs to run using the OS shell.
|
||||
# 📚 https://git.io/JvXDl
|
||||
@@ -82,4 +82,4 @@ jobs:
|
||||
# make release
|
||||
|
||||
- name: Perform CodeQL Analysis
|
||||
uses: github/codeql-action/analyze@f09c1c0a94de965c15400f5634aa42fac8fb8f88 # 3.27.5
|
||||
uses: github/codeql-action/analyze@dd746615b3b9d728a6a37ca2045b68ca76d4841a # 3.28.8
|
||||
|
||||
2
.github/workflows/maven.yml
vendored
2
.github/workflows/maven.yml
vendored
@@ -39,7 +39,7 @@ jobs:
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
- name: Set up JDK ${{ matrix.java }}
|
||||
uses: actions/setup-java@8df1039502a15bceb9433410b1a100fbe190c53b # v4.5.0
|
||||
uses: actions/setup-java@3a4f6e1af504cf6a31855fa899c6aa5355ba6c12 # v4.7.0
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
java-version: ${{ matrix.java }}
|
||||
|
||||
4
.github/workflows/scorecards-analysis.yml
vendored
4
.github/workflows/scorecards-analysis.yml
vendored
@@ -57,13 +57,13 @@ jobs:
|
||||
publish_results: true
|
||||
|
||||
- name: "Upload artifact"
|
||||
uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # 4.4.3
|
||||
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # 4.6.0
|
||||
with:
|
||||
name: SARIF file
|
||||
path: results.sarif
|
||||
retention-days: 5
|
||||
|
||||
- name: "Upload to code-scanning"
|
||||
uses: github/codeql-action/upload-sarif@f09c1c0a94de965c15400f5634aa42fac8fb8f88 # 3.27.5
|
||||
uses: github/codeql-action/upload-sarif@dd746615b3b9d728a6a37ca2045b68ca76d4841a # 3.28.8
|
||||
with:
|
||||
sarif_file: results.sarif
|
||||
|
||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -29,3 +29,4 @@
|
||||
|
||||
### VS Code ###
|
||||
.vscode/
|
||||
/.DS_Store
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
(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
|
||||
https://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,
|
||||
@@ -60,18 +60,21 @@ Making Changes
|
||||
--------------
|
||||
|
||||
+ Create a _topic branch_ for your isolated work.
|
||||
* Usually you should base your branch on the `master` branch.
|
||||
* Usually you should base your branch from the `master` branch.
|
||||
* A good topic branch name can be the JIRA bug ID plus a keyword, e.g. `LOGGING-123-InputStream`.
|
||||
* If you have submitted multiple JIRA issues, try to maintain separate branches and pull requests.
|
||||
+ Make commits of logical units.
|
||||
* Make sure your commit messages are meaningful and in the proper format. Your commit message should contain the key of the JIRA issue.
|
||||
* e.g. `LOGGING-123: Close input stream earlier`
|
||||
* For example, `[LOGGING-123] Close input stream sooner`
|
||||
+ Respect the original code style:
|
||||
+ Only use spaces for indentation.
|
||||
+ Only use spaces for indentation; you can check for unnecessary whitespace with `git diff` before committing.
|
||||
+ Create minimal diffs - disable _On Save_ actions like _Reformat Source Code_ or _Organize Imports_. If you feel the source code should be reformatted create a separate PR for this change first.
|
||||
+ Check for unnecessary whitespace with `git diff` -- check before committing.
|
||||
+ Make sure you have added the necessary tests for your changes, typically in `src/test/java`.
|
||||
+ Run all the tests with `mvn clean verify` to ensure nothing else was accidentally broken.
|
||||
+ Write unit tests that match behavioral changes, where the tests fail if the changes to the runtime are not applied. This may not always be possible but is a best-practice.
|
||||
Unit tests are typically in the `src/test/java` directory.
|
||||
+ Run a successful build using the default [Maven](https://maven.apache.org/) goal with `mvn`; that's `mvn` on the command line by itself.
|
||||
+ Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
|
||||
+ Each commit in the pull request should have a meaningful subject line and body. Note that commits might be squashed by a maintainer on merge.
|
||||
|
||||
|
||||
Making Trivial Changes
|
||||
----------------------
|
||||
@@ -79,7 +82,7 @@ Making Trivial Changes
|
||||
The JIRA tickets are used to generate the changelog for the next release.
|
||||
|
||||
For changes of a trivial nature to comments and documentation, it is not always necessary to create a new ticket in JIRA.
|
||||
In this case, it is appropriate to start the first line of a commit with '(doc)' instead of a ticket number.
|
||||
In this case, it is appropriate to start the first line of a commit with '[doc]' or '[javadoc]' instead of a ticket number.
|
||||
|
||||
|
||||
Submitting Changes
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
Apache Commons Logging
|
||||
Copyright 2001-2024 The Apache Software Foundation
|
||||
Copyright 2001-2025 The Apache Software Foundation
|
||||
|
||||
This product includes software developed at
|
||||
The Apache Software Foundation (https://www.apache.org/).
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
<head>
|
||||
<title>Proposal for Logging Library Package</title>
|
||||
</head>
|
||||
<body bgcolor="white">
|
||||
<body>
|
||||
|
||||
<div align="center">
|
||||
<h1>Proposal for <em>Logging</em> Package</h1>
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
(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
|
||||
https://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,
|
||||
|
||||
@@ -12,6 +12,47 @@ Changes in this version
|
||||
-----------------------
|
||||
|
||||
|
||||
Fixed Bugs
|
||||
----------
|
||||
|
||||
* Javadoc is missing its Overview page. Thanks to Gary Gregory.
|
||||
* Remove -nouses directive from maven-bundle-plugin. OSGi package imports now state 'uses' definitions for package imports, this doesn't affect JPMS (from org.apache.commons:commons-parent:80). Thanks to Gary Gregory.
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
* Bump org.apache.commons:commons-parent from 72 to 81 #285, #287, #295, #298, #303, #310, #339. Thanks to Gary Gregory, Dependabot.
|
||||
* Bump org.apache.commons:commons-lang3 from 3.16.0 to 3.17.0 #288 [test]. Thanks to Gary Gregory, Dependabot.
|
||||
* Bump log4j2.version from 2.23.1 to 2.24.3 #292, #299, #319, #328. Thanks to Gary Gregory, Dependabot.
|
||||
|
||||
Removed:
|
||||
* Remove "cobertura" plugin, we use JaCoco, Cobertura is unmaintained. Thanks to Gary Gregory.
|
||||
|
||||
Historical list of changes: https://commons.apache.org/proper/commons-logging/changes.html
|
||||
|
||||
Download it from https://commons.apache.org/proper/commons-logging/download_logging.cgi
|
||||
|
||||
For complete information on Apache Commons Logging, including instructions on how to submit bug reports,
|
||||
patches, or suggestions for improvement, see the Apache Commons Logging website:
|
||||
|
||||
https://commons.apache.org/proper/commons-logging/
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Apache Commons Logging 1.3.5 Release Notes
|
||||
------------------------------------------
|
||||
|
||||
The Apache Commons Logging team is pleased to announce the release of Apache Commons Logging 1.3.5.
|
||||
|
||||
Apache Commons Logging is a thin adapter allowing configurable bridging to other,
|
||||
well-known logging systems.
|
||||
|
||||
This is a feature and maintenance release. Java 8 or later is required.
|
||||
|
||||
Changes in this version
|
||||
-----------------------
|
||||
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
@@ -50,7 +91,7 @@ Changes in this version
|
||||
Fixed Bugs
|
||||
----------
|
||||
|
||||
* LOGGING-192: Fix factory loading from context class loader #280, #281. Thanks to Björn Kautler, Piotr Karwasz.
|
||||
* LOGGING-192: Fix factory loading from context class loader #280, #281. Thanks to Bj<EFBFBD>rn Kautler, Piotr Karwasz.
|
||||
|
||||
Changes
|
||||
-------
|
||||
@@ -166,9 +207,9 @@ Fixed Bugs
|
||||
|
||||
* Remove references to very old JDK and Commons Logging versions #201. Thanks to Elliotte Rusty Harold.
|
||||
* Update from Logj 1 to the Log4j 2 API compatibility layer #231. Thanks to Gary Gregory, Piotr P. Karwasz.
|
||||
* Allow Servlet 4 in OSGi environment #191. Thanks to Václav Haisman.
|
||||
* Allow Servlet 4 in OSGi environment #191. Thanks to V<EFBFBD>clav Haisman.
|
||||
* Fix generics warnings #213. Thanks to Elliotte Rusty Harold.
|
||||
* LOGGING-189: Fix Import-Package entry for org.slf4j #188. Thanks to Václav Haisman, Sebb, Hannes Wellmann, Gary Gregory, Piotr P. Karwasz.
|
||||
* LOGGING-189: Fix Import-Package entry for org.slf4j #188. Thanks to V<EFBFBD>clav Haisman, Sebb, Hannes Wellmann, Gary Gregory, Piotr P. Karwasz.
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
38
STATUS.html
38
STATUS.html
@@ -21,21 +21,21 @@
|
||||
<head>
|
||||
<title>Status File for Apache Commons "Logging" Component</title>
|
||||
<head>
|
||||
<body bgcolor="white">
|
||||
<body>
|
||||
|
||||
|
||||
<div align="center">
|
||||
<div>
|
||||
<h1>The Apache Commons <em>Logging</em> Component</h1>
|
||||
<a href="#Introduction">[Introduction]</a>
|
||||
<a href="#Dependencies">[Dependencies]</a>
|
||||
<a href="#Release Info">[Release Info]</a>
|
||||
<a href="#Committers">[Committers]</a>
|
||||
<a href="#Action Items">[Action Items]</a>
|
||||
<br /><br />
|
||||
<ol>
|
||||
<li><a href="#Introduction">Introduction</a></li>
|
||||
<li><a href="#Dependencies">Dependencies</a></li>
|
||||
<li><a href="#Release Info">Release Info</a></li>
|
||||
<li><a href="#Committers">Committers</a></li>
|
||||
<li><a href="#Action Items">Action Items</a></li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
|
||||
<a name="Introduction"></a>
|
||||
<a id="Introduction"></a>
|
||||
<h3>1. INTRODUCTION</h3>
|
||||
|
||||
|
||||
@@ -54,6 +54,7 @@ developer to not tie himself to a particular logging implementation.
|
||||
|
||||
<p>
|
||||
The package does :
|
||||
</p>
|
||||
<ul>
|
||||
<li>Have an API which should be as simple to use as possible</li>
|
||||
<li>Provide support for Avalon's Logkit</li>
|
||||
@@ -65,19 +66,17 @@ The package does :
|
||||
<li>Provide pluggable support for other logging APIs</li>
|
||||
<li>Provide a simple System.out logger</li>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Non-goals:
|
||||
</p>
|
||||
<ul>
|
||||
<li>This package will not perform logging itself, except at the most basic
|
||||
level.</li>
|
||||
<li>We do not seek to become a "standard" API.</li>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
|
||||
<a name="Dependencies"></a>
|
||||
<a id="Dependencies"></a>
|
||||
<h3>2. DEPENDENCIES</h3>
|
||||
|
||||
<p>The <em>Logging</em> component is dependent upon the following external
|
||||
@@ -99,7 +98,7 @@ components for compilation:</p>
|
||||
<p> Of course, the user must ensure that any logging systems that they wish
|
||||
to use are present in the classpath when they use this component. </p>
|
||||
|
||||
<a name="Release Info"></a>
|
||||
<a id="Release Info"></a>
|
||||
<h3>3. RELEASE INFO</h3>
|
||||
|
||||
<table border="1">
|
||||
@@ -133,9 +132,7 @@ to use are present in the classpath when they use this component. </p>
|
||||
|
||||
<p>Planned Next Release: TBD</p>
|
||||
|
||||
|
||||
|
||||
<a name="Committers"></a>
|
||||
<a id="Committers"></a>
|
||||
<h3>4. COMMITTERS</h3>
|
||||
|
||||
<p>The following individuals are the primary developers and maintainers of this
|
||||
@@ -154,11 +151,10 @@ component to ensure that it continues to meet a variety of needs.</p>
|
||||
<li>Juozas Baliuka</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<a name="Action Items"></a>
|
||||
<a id="Action Items"></a>
|
||||
<h3>5. ACTION ITEMS</h3>
|
||||
|
||||
<p>TO DO List:</p>
|
||||
<p>TO DO List: Empty.</p>
|
||||
|
||||
<table border="1">
|
||||
<tr>
|
||||
|
||||
13
pom.xml
13
pom.xml
@@ -16,7 +16,7 @@ KIND, either express or implied. See the License for the
|
||||
specific language governing permissions and limitations
|
||||
under the License.
|
||||
-->
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<!--
|
||||
Note that due to the special requirements of logging unit-tests, most
|
||||
tests are executed in the "integration-test" phase rather than the
|
||||
@@ -26,7 +26,7 @@ under the License.
|
||||
<parent>
|
||||
<groupId>org.apache.commons</groupId>
|
||||
<artifactId>commons-parent</artifactId>
|
||||
<version>78</version>
|
||||
<version>81</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>commons-logging</groupId>
|
||||
@@ -50,13 +50,13 @@ under the License.
|
||||
<commons.jira.id>LOGGING</commons.jira.id>
|
||||
<commons.jira.pid>12310484</commons.jira.pid>
|
||||
<!-- The RC version used in the staging repository URL. -->
|
||||
<commons.rc.version>RC1</commons.rc.version>
|
||||
<commons.rc.version>RC2</commons.rc.version>
|
||||
<skipSurefireReport>true</skipSurefireReport>
|
||||
<!-- Since version 3.2 additional classpath dependencies are allowed. -->
|
||||
<commons.failsafe.version>3.2.1</commons.failsafe.version>
|
||||
<!-- Allow default test run order to be changed -->
|
||||
<failsafe.runorder>filesystem</failsafe.runorder>
|
||||
<log4j2.version>2.24.2</log4j2.version>
|
||||
<log4j2.version>2.24.3</log4j2.version>
|
||||
<logback.version>1.3.14</logback.version>
|
||||
<slf4j.version>2.0.16</slf4j.version>
|
||||
<findsecbugs.version>1.13.0</findsecbugs.version>
|
||||
@@ -71,7 +71,8 @@ under the License.
|
||||
org.slf4j;version="[1.7, 3)";resolution:=optional,
|
||||
org.slf4j.spi;version="[1.7, 3)";resolution:=optional
|
||||
</commons.osgi.import>
|
||||
<project.build.outputTimestamp>2024-11-22T15:35:19Z</project.build.outputTimestamp>
|
||||
<!-- project.build.outputTimestamp is managed by Maven plugins, see https://maven.apache.org/guides/mini/guide-reproducible-builds.html -->
|
||||
<project.build.outputTimestamp>2024-08-19T13:43:35Z</project.build.outputTimestamp>
|
||||
<!-- JaCoCo: Don't make code coverage worse than: -->
|
||||
<commons.jacoco.haltOnFailure>true</commons.jacoco.haltOnFailure>
|
||||
<commons.jacoco.classRatio>0.42</commons.jacoco.classRatio>
|
||||
@@ -758,7 +759,7 @@ under the License.
|
||||
<email>ggregory at apache.org</email>
|
||||
<url>https://www.garygregory.com</url>
|
||||
<organization>The Apache Software Foundation</organization>
|
||||
<organizationUrl>https://www.apache.org/</organizationUrl>
|
||||
<organizationUrl>https://www.apache.org/</organizationUrl>
|
||||
<roles>
|
||||
<role>PMC Member</role>
|
||||
</roles>
|
||||
|
||||
@@ -38,18 +38,22 @@ and commit
|
||||
The <action> type attribute can be add,update,fix,remove.
|
||||
-->
|
||||
|
||||
<document xmlns="http://maven.apache.org/changes/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/changes/1.0.0 http://maven.apache.org/xsd/changes-1.0.0.xsd">
|
||||
<document xmlns="http://maven.apache.org/changes/2.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/changes/2.0.0 https://maven.apache.org/xsd/changes-2.0.0.xsd">
|
||||
<properties>
|
||||
<title>Release Notes</title>
|
||||
</properties>
|
||||
<body>
|
||||
<release version="1.3.5" date="2024-11-22" description="This is a feature and maintenance release. Java 8 or later is required.">
|
||||
<release version="1.3.5" date="2025-01-31" description="This is a feature and maintenance release. Java 8 or later is required.">
|
||||
<!-- FIX -->
|
||||
<action dev="ggregory" type="fix" due-to="Gary Gregory">Javadoc is missing its Overview page.</action>
|
||||
<action dev="ggregory" type="fix" due-to="Gary Gregory">Remove -nouses directive from maven-bundle-plugin. OSGi package imports now state 'uses' definitions for package imports, this doesn't affect JPMS (from org.apache.commons:commons-parent:80).</action>
|
||||
<!-- ADD -->
|
||||
<!-- UPDATE -->
|
||||
<action dev="ggregory" type="update" due-to="Gary Gregory, Dependabot">Bump org.apache.commons:commons-parent from 72 to 78 #285, #287, #295, #298, #303, #310.</action>
|
||||
<action dev="ggregory" type="update" due-to="Gary Gregory, Dependabot">Bump org.apache.commons:commons-parent from 72 to 81 #285, #287, #295, #298, #303, #310, #339.</action>
|
||||
<action dev="ggregory" type="update" due-to="Gary Gregory, Dependabot">Bump org.apache.commons:commons-lang3 from 3.16.0 to 3.17.0 #288 [test].</action>
|
||||
<action dev="ggregory" type="update" due-to="Gary Gregory, Dependabot">Bump log4j2.version from 2.23.1 to 2.24.2 #292, #299, #319.</action>
|
||||
<action dev="ggregory" type="update" due-to="Gary Gregory, Dependabot">Bump log4j2.version from 2.23.1 to 2.24.3 #292, #299, #319, #328.</action>
|
||||
<!-- REMOVE -->
|
||||
<action type="remove" dev="ggregory" due-to="Gary Gregory">Remove "cobertura" plugin, we use JaCoco, Cobertura is unmaintained.</action>
|
||||
</release>
|
||||
|
||||
@@ -107,7 +107,7 @@ Removed:
|
||||
## End of main loop
|
||||
#end
|
||||
|
||||
Historical list of changes: ${project.url}changes-report.html
|
||||
Historical list of changes: ${project.url}changes.html
|
||||
|
||||
Download it from ${project.url}download_logging.cgi
|
||||
|
||||
|
||||
@@ -72,5 +72,6 @@ limitations under the License.
|
||||
</module>
|
||||
<module name="WhitespaceAfter" />
|
||||
<module name="ParenPad" />
|
||||
<module name="TypecastParenPad" />
|
||||
</module>
|
||||
</module>
|
||||
|
||||
@@ -16,7 +16,7 @@ See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<ruleset name="mybraces" xmlns="http://pmd.sourceforge.net/ruleset/2.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://pmd.sourceforge.net/ruleset/2.0.0 http://pmd.sourceforge.net/ruleset_2_0_0.xsd">
|
||||
xsi:schemaLocation="http://pmd.sourceforge.net/ruleset/2.0.0 https://pmd.sourceforge.net/ruleset_2_0_0.xsd">
|
||||
<description>Excludes from default PMD rules.</description>
|
||||
<rule ref="category/java/errorprone.xml/EmptyCatchBlock">
|
||||
<properties>
|
||||
|
||||
@@ -19,7 +19,7 @@ under the License.
|
||||
-->
|
||||
<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.2.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.2.0 http://maven.apache.org/xsd/assembly-2.2.0.xsd">
|
||||
xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.2.0 https://maven.apache.org/xsd/assembly-2.2.0.xsd">
|
||||
<id>bin</id>
|
||||
<formats>
|
||||
<format>tar.gz</format>
|
||||
|
||||
@@ -19,7 +19,7 @@ under the License.
|
||||
-->
|
||||
<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.2.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.2.0 http://maven.apache.org/xsd/assembly-2.2.0.xsd">
|
||||
xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.2.0 https://maven.apache.org/xsd/assembly-2.2.0.xsd">
|
||||
<id>src</id>
|
||||
<formats>
|
||||
<format>tar.gz</format>
|
||||
|
||||
@@ -566,7 +566,6 @@ public abstract class LogFactory {
|
||||
*
|
||||
* @param clazz Class.
|
||||
* @return a ClassLoader.
|
||||
*
|
||||
* @since 1.1
|
||||
*/
|
||||
protected static ClassLoader getClassLoader(final Class<?> clazz) {
|
||||
@@ -886,7 +885,7 @@ public abstract class LogFactory {
|
||||
// implementations via the TCCL, we don't try to load the default LogFactory
|
||||
// implementation via the context class loader because:
|
||||
// * that can cause problems (see comments in newFactory method)
|
||||
// * no-one should be customising the code of the default class
|
||||
// * no-one should be customizing the code of the default class
|
||||
// Yes, we do give up the ability for the child to ship a newer
|
||||
// version of the LogFactoryImpl class and have it used dynamically
|
||||
// by an old LogFactory class in the parent, but that isn't
|
||||
|
||||
@@ -490,7 +490,6 @@ public class LogFactoryImpl extends LogFactory {
|
||||
* Follows the discovery process described in the class Javadoc.
|
||||
*
|
||||
* @param logCategory the name of the log category
|
||||
*
|
||||
* @throws LogConfigurationException if an error in discovery occurs,
|
||||
* or if no adapter at all can be instantiated
|
||||
*/
|
||||
@@ -809,7 +808,6 @@ public class LogFactoryImpl extends LogFactory {
|
||||
* call {@code getInstance(String)} with it.
|
||||
*
|
||||
* @param clazz Class for which a suitable Log name will be derived
|
||||
*
|
||||
* @throws LogConfigurationException if a suitable {@code Log}
|
||||
* instance cannot be returned
|
||||
*/
|
||||
@@ -866,9 +864,7 @@ public class LogFactoryImpl extends LogFactory {
|
||||
* </p>
|
||||
*
|
||||
* @return the {@code Constructor} that can be called to instantiate new {@link org.apache.commons.logging.Log} instances.
|
||||
*
|
||||
* @throws LogConfigurationException if a suitable constructor cannot be returned
|
||||
*
|
||||
* @deprecated Never invoked by this class; subclasses should not assume it will be.
|
||||
*/
|
||||
@Deprecated
|
||||
@@ -888,10 +884,9 @@ public class LogFactoryImpl extends LogFactory {
|
||||
/**
|
||||
* Given two related class loaders, return the one which is a child of
|
||||
* the other.
|
||||
* <p>
|
||||
*
|
||||
* @param c1 is a class loader (including the null class loader)
|
||||
* @param c2 is a class loader (including the null class loader)
|
||||
*
|
||||
* @return c1 if it has c2 as an ancestor, c2 if it has c1 as an ancestor,
|
||||
* and null if neither is an ancestor of the other.
|
||||
*/
|
||||
@@ -956,7 +951,6 @@ public class LogFactoryImpl extends LogFactory {
|
||||
* @param logAdapterClassName is the class name of the Log implementation
|
||||
* that could not be instantiated. Cannot be {@code null}.
|
||||
* @param discoveryFlaw is the Throwable created by the class loader
|
||||
*
|
||||
* @throws LogConfigurationException ALWAYS
|
||||
*/
|
||||
private void handleFlawedDiscovery(final String logAdapterClassName,
|
||||
@@ -1191,7 +1185,6 @@ public class LogFactoryImpl extends LogFactory {
|
||||
* which is required by Jdk14Logger.
|
||||
*
|
||||
* @return Whether <em>JDK 1.4 or later</em> logging is available.
|
||||
*
|
||||
* @deprecated Never invoked by this class; subclasses should not assume it will be.
|
||||
*/
|
||||
@Deprecated
|
||||
@@ -1203,7 +1196,6 @@ public class LogFactoryImpl extends LogFactory {
|
||||
* Tests whether a <em>Log4J</em> implementation available.
|
||||
*
|
||||
* @return whether a <em>Log4J</em> implementation available.
|
||||
*
|
||||
* @deprecated Never invoked by this class; subclasses should not assume it will be.
|
||||
*/
|
||||
@Deprecated
|
||||
@@ -1262,7 +1254,6 @@ public class LogFactoryImpl extends LogFactory {
|
||||
*
|
||||
* @param name Name of the new logger
|
||||
* @return a new {@link org.apache.commons.logging.Log}
|
||||
*
|
||||
* @throws LogConfigurationException if a new instance cannot be created
|
||||
*/
|
||||
protected Log newInstance(final String name) throws LogConfigurationException {
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
<head>
|
||||
<title>Overview Documentation for COMMONS-LOGGING</title>
|
||||
</head>
|
||||
<body bgcolor="white">
|
||||
<body>
|
||||
<p>The <em>Logging Wrapper Library</em> component of the Apache Commons
|
||||
subproject offers wrappers around an extensible set of concrete logging
|
||||
implementations, so that application code based on it does not need to be
|
||||
@@ -0,0 +1,16 @@
|
||||
// Licensed to the Apache Software Foundation (ASF) under one
|
||||
// or more contributor license agreements. See the NOTICE file
|
||||
// distributed with this work for additional information
|
||||
// regarding copyright ownership. The ASF licenses this file
|
||||
// to you 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
|
||||
//
|
||||
// https://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.
|
||||
|
||||
@@ -17,30 +17,39 @@
|
||||
limitations under the License.
|
||||
|
||||
-->
|
||||
<project xmlns="http://maven.apache.org/DECORATION/1.1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/DECORATION/1.1.0 http://maven.apache.org/xsd/decoration-1.1.0.xsd">
|
||||
<bannerRight>
|
||||
<name>Commons Logging</name>
|
||||
<src>/images/logo.png</src>
|
||||
<href>https://commons.apache.org/logging/</href>
|
||||
<site xmlns="http://maven.apache.org/SITE/2.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/SITE/2.0.0 https://maven.apache.org/xsd/site-2.0.0.xsd"
|
||||
name="Apache Commons Logging">
|
||||
<bannerRight name="Commons Logging" href="/index.html">
|
||||
<image src="/images/logo.png"/>
|
||||
</bannerRight>
|
||||
<body>
|
||||
<menu name="Commons Logging">
|
||||
<item name="Overview" href="/index.html" />
|
||||
<!-- Start: For all components. -->
|
||||
<item name="About" href="/index.html" />
|
||||
<item name="Asking Questions" href="/mail-lists.html" />
|
||||
<item name="Release History" href="/changes.html" />
|
||||
<item name="Issue Tracking" href="/issue-management.html" />
|
||||
<item name="Dependency Management" href="/dependency-info.html" />
|
||||
<item name="Sources" href="/scm.html" />
|
||||
<item name="Security" href="security.html" />
|
||||
<item name="License" href="https://www.apache.org/licenses/LICENSE-2.0" />
|
||||
<item name="Code of Conduct" href="https://www.apache.org/foundation/policies/conduct.html" />
|
||||
<item name="Download" href="/download_logging.cgi" />
|
||||
<item name="Javadoc">
|
||||
<item name="Javadoc Current" href="apidocs/index.html" />
|
||||
<item name="Javadoc Archive" href="https://javadoc.io/doc/commons-logging/commons-logging" />
|
||||
</item>
|
||||
<!-- End: For all components. -->
|
||||
<!-- Specific to this component: -->
|
||||
<item name="User Guide" href="/guide.html" />
|
||||
<item name="Troubleshooting Guide" href="/troubleshooting.html" />
|
||||
<item name="Release Notes" href="/RELEASE-NOTES.txt" />
|
||||
<item name='Javadoc (Latest release)' href='/apidocs/index.html' />
|
||||
<item name='Javadoc Archive' href='https://javadoc.io/doc/commons-logging/commons-logging' />
|
||||
</menu>
|
||||
<menu name="Development">
|
||||
<item name="Building" href="/building.html" />
|
||||
<item name="Mailing Lists" href="/mail-lists.html" />
|
||||
<item name="Issue Tracking" href="/issue-tracking.html" />
|
||||
<item name="Proposal" href="/proposal.html" />
|
||||
<item name="Tech Guide" href="/tech.html" />
|
||||
<item name="Wiki" href="https://wiki.apache.org/commons/Logging" />
|
||||
<item name="Release Notes" href="/RELEASE-NOTES.txt" />
|
||||
</menu>
|
||||
</body>
|
||||
</project>
|
||||
</site>
|
||||
|
||||
@@ -15,7 +15,9 @@ 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.
|
||||
-->
|
||||
<document>
|
||||
<document xmlns="http://maven.apache.org/XDOC/2.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd">
|
||||
<properties>
|
||||
<title>Building</title>
|
||||
<author email="dev@commons.apache.org">Commons Documentation Team</author>
|
||||
|
||||
@@ -7,7 +7,7 @@ The ASF licenses this file to You 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
|
||||
https://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,
|
||||
@@ -56,10 +56,12 @@ limitations under the License.
|
||||
| |
|
||||
+======================================================================+
|
||||
-->
|
||||
<document>
|
||||
<document xmlns="http://maven.apache.org/XDOC/2.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd">
|
||||
<properties>
|
||||
<title>Download Apache Commons Logging</title>
|
||||
<author email="dev@commons.apache.org">Apache Commons Documentation Team</author>
|
||||
<author email="dev@commons.apache.org">Apache Commons Team</author>
|
||||
</properties>
|
||||
<body>
|
||||
<section name="Download Apache Commons Logging">
|
||||
@@ -79,7 +81,7 @@ limitations under the License.
|
||||
mirrors (at the end of the mirrors list) that should be
|
||||
available.
|
||||
<br></br>
|
||||
[if-any logo]<a href="[link]"><img align="right" src="[logo]" border="0"></img></a>[end]
|
||||
[if-any logo]<a href="[link]"><img align="right" src="[logo]" border="0" alt="Logo"></img></a>[end]
|
||||
</p>
|
||||
|
||||
<form action="[location]" method="get" id="SelectMirror">
|
||||
|
||||
@@ -19,8 +19,9 @@
|
||||
|
||||
-->
|
||||
|
||||
<document>
|
||||
|
||||
<document xmlns="http://maven.apache.org/XDOC/2.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd">
|
||||
<properties>
|
||||
<title>User Guide</title>
|
||||
<author email="dev@commons.apache.org">Commons Documentation Team</author>
|
||||
@@ -28,7 +29,6 @@
|
||||
|
||||
<body>
|
||||
<section name='Contents'>
|
||||
<p>
|
||||
<ol>
|
||||
<li><a href='#Introduction'>Introduction</a></li>
|
||||
<li><a href='#Quick Start'>Quick Start</a>
|
||||
@@ -85,7 +85,6 @@
|
||||
<li><a href='#Frequently Asked Questions'>Frequently Asked Questions</a>
|
||||
</li>
|
||||
</ol>
|
||||
</p>
|
||||
</section>
|
||||
<section name="Introduction">
|
||||
<p>
|
||||
@@ -228,18 +227,16 @@ is responsible for handling such issues.
|
||||
</section>
|
||||
<section name='Developing With JCL'>
|
||||
<subsection name="Obtaining a Log Object">
|
||||
<p>
|
||||
<p>
|
||||
To use the JCL SPI from a Java class,
|
||||
include the following import statements:
|
||||
</p>
|
||||
<ul>
|
||||
<code>
|
||||
</p>
|
||||
<code>
|
||||
import org.apache.commons.logging.Log;
|
||||
<br/>
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
<br/>
|
||||
</code>
|
||||
</ul>
|
||||
<p>
|
||||
Note that some components using JCL may
|
||||
either extend Log,
|
||||
@@ -251,7 +248,6 @@ on how commons-logging should be used in such components.
|
||||
For each class definition, declare and initialize a
|
||||
<code>log</code> attribute as follows:
|
||||
</p>
|
||||
<ul>
|
||||
<source>
|
||||
public class CLASS
|
||||
{
|
||||
@@ -259,7 +255,6 @@ public class CLASS
|
||||
...
|
||||
;
|
||||
</source>
|
||||
</ul>
|
||||
<p>
|
||||
Note that for application code, declaring the log member as "static" is more
|
||||
efficient as one Log object is created per class, and is recommended.
|
||||
@@ -278,7 +273,6 @@ The <code>org.apache.commons.logging.Log</code> interface defines the
|
||||
following methods for use
|
||||
in writing log/trace messages to the log:
|
||||
</p>
|
||||
<ul>
|
||||
<source>
|
||||
log.fatal(Object message);
|
||||
log.fatal(Object message, Throwable t);
|
||||
@@ -293,7 +287,6 @@ in writing log/trace messages to the log:
|
||||
log.trace(Object message);
|
||||
log.trace(Object message, Throwable t);
|
||||
</source>
|
||||
</ul>
|
||||
<p>
|
||||
Semantics for these methods are such that it is expected
|
||||
that the severity, from highest to lowest, of messages is ordered as above.
|
||||
@@ -301,7 +294,6 @@ that the severity, from highest to lowest, of messages is ordered as above.
|
||||
<p>
|
||||
In addition to the logging methods, the following are provided for code guards:
|
||||
</p>
|
||||
<ul>
|
||||
<source>
|
||||
log.isFatalEnabled();
|
||||
log.isErrorEnabled();
|
||||
@@ -310,7 +302,6 @@ In addition to the logging methods, the following are provided for code guards:
|
||||
log.isDebugEnabled();
|
||||
log.isTraceEnabled();
|
||||
</source>
|
||||
</ul>
|
||||
</subsection>
|
||||
<subsection name="Serialization Issues">
|
||||
<p>Prior to release 1.0.4, none of the standard Log implementations were
|
||||
@@ -434,13 +425,13 @@ The following guidelines are suggested:
|
||||
<li>
|
||||
<b>fatal</b> - Severe errors that cause premature termination.
|
||||
Expect these to be immediately visible on a status console.
|
||||
See also <a HREF="#National%20Language%20Support%20And%20Internationalization">
|
||||
See also <a href="#National%20Language%20Support%20And%20Internationalization">
|
||||
Internationalization</a>.
|
||||
</li>
|
||||
<li>
|
||||
<b>error</b> - Other runtime errors or unexpected conditions.
|
||||
Expect these to be immediately visible on a status console.
|
||||
See also <a HREF="#National%20Language%20Support%20And%20Internationalization">
|
||||
See also <a href="#National%20Language%20Support%20And%20Internationalization">
|
||||
Internationalization</a>.
|
||||
</li>
|
||||
<li>
|
||||
@@ -448,14 +439,14 @@ Internationalization</a>.
|
||||
other runtime situations that are undesirable or unexpected, but not
|
||||
necessarily "wrong".
|
||||
Expect these to be immediately visible on a status console.
|
||||
See also <a HREF="#National%20Language%20Support%20And%20Internationalization">
|
||||
See also <a href="#National%20Language%20Support%20And%20Internationalization">
|
||||
Internationalization</a>.
|
||||
</li>
|
||||
<li>
|
||||
<b>info</b> - Interesting runtime events (startup/shutdown).
|
||||
Expect these to be immediately visible on a console,
|
||||
so be conservative and keep to a minimum.
|
||||
See also <a HREF="#National%20Language%20Support%20And%20Internationalization">
|
||||
See also <a href="#National%20Language%20Support%20And%20Internationalization">
|
||||
Internationalization</a>.
|
||||
</li>
|
||||
<li>
|
||||
@@ -561,11 +552,9 @@ If more control is desired for the level of detail of these
|
||||
'enterprise' exceptions, then consider creating a special
|
||||
logger just for these exceptions:
|
||||
</p>
|
||||
<ul>
|
||||
<source>
|
||||
Log log = LogFactory.getLog("org.apache.<i>component</i>.enterprise");
|
||||
</source>
|
||||
</ul>
|
||||
<p>
|
||||
This allows the 'enterprise' level information to be turned on/off explicitly
|
||||
by most logger implementations.
|
||||
@@ -669,29 +658,29 @@ new <code>LogFactory</code> implementations that provide alternative discovery s
|
||||
When creating new implementations for <code>Log</code> and <code>LogFactory</code>,
|
||||
it is important to understand the implied contract between the factory
|
||||
and the log implementations:
|
||||
<ul>
|
||||
<li><b>Life cycle</b>
|
||||
<blockquote>
|
||||
</p>
|
||||
<ul>
|
||||
<li><b>Life cycle</b>
|
||||
<blockquote>
|
||||
The JCL LogFactory implementation must assume responsibility for
|
||||
either connecting/disconnecting to a logging toolkit,
|
||||
or instantiating/initializing/destroying a logging toolkit.
|
||||
</blockquote>
|
||||
</blockquote>
|
||||
</li>
|
||||
<li><b>Exception handling</b>
|
||||
<blockquote>
|
||||
<li><b>Exception handling</b>
|
||||
<blockquote>
|
||||
The JCL Log interface doesn't specify any exceptions to be handled,
|
||||
the implementation must catch any exceptions.
|
||||
</blockquote>
|
||||
</li>
|
||||
<li><b>Multiple threads</b>
|
||||
<blockquote>
|
||||
<li><b>Multiple threads</b>
|
||||
<blockquote>
|
||||
The JCL Log and LogFactory implementations must ensure
|
||||
that any synchronization required by the logging toolkit
|
||||
is met.
|
||||
</blockquote>
|
||||
</li>
|
||||
</ul>
|
||||
</p>
|
||||
</subsection>
|
||||
<subsection name='Creating a Log Implementation'>
|
||||
<p>
|
||||
|
||||
@@ -19,8 +19,9 @@
|
||||
|
||||
-->
|
||||
|
||||
<document>
|
||||
|
||||
<document xmlns="http://maven.apache.org/XDOC/2.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd">
|
||||
<properties>
|
||||
<title>Overview</title>
|
||||
<author email="dev@commons.apache.org">Commons Documentation Team</author>
|
||||
@@ -82,23 +83,23 @@ This gives short introductions to topics such as advanced class loading.
|
||||
<a href="https//commons.apache.org/proper/commons-logging/download_logging.cgi">here</a>.
|
||||
</p>
|
||||
<p>
|
||||
The full release history is <a href="changes-report.html">here</a>.
|
||||
The full release history is <a href="changes.html">here</a>.
|
||||
</p>
|
||||
<subsection name='Release 1.3.x'>
|
||||
<p>
|
||||
See <a href="changes-report.html">change-report</a>.
|
||||
See <a href="changes.html">change-report</a>.
|
||||
</p>
|
||||
</subsection>
|
||||
<subsection name='Release 1.2 - July 2014'>
|
||||
<p>The main purpose of the 1.2 release is to drop support for Java 1.1.</p>
|
||||
<p>For a full list of changes since the 1.1.3 release, please refer to the
|
||||
<a href="changes-report.html">change-report</a>.</p>
|
||||
<a href="changes.html">change-report</a>.</p>
|
||||
</subsection>
|
||||
<subsection name='Release 1.1.3 - May 2013'>
|
||||
<p>The 1.1.3 release only updates the Bundle-SymbolicName in the manifest
|
||||
to "org.apache.commons.logging".</p>
|
||||
<p>For a full list of changes since the 1.1.1 release, please refer to the
|
||||
<a href="changes-report.html">change-report</a>.</p>
|
||||
<a href="changes.html">change-report</a>.</p>
|
||||
</subsection>
|
||||
<subsection name='Release 1.1.2 - March 2013'>
|
||||
<p>The 1.1.2 release is a packaging of bug fixes since release 1.1.1.</p>
|
||||
|
||||
@@ -7,7 +7,7 @@ The ASF licenses this file to You 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
|
||||
https://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,
|
||||
@@ -41,10 +41,12 @@ limitations under the License.
|
||||
| |
|
||||
+======================================================================+
|
||||
-->
|
||||
<document>
|
||||
<document xmlns="http://maven.apache.org/XDOC/2.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd">
|
||||
<properties>
|
||||
<title>Apache Commons Logging Issue tracking</title>
|
||||
<author email="dev@commons.apache.org">Apache Commons Documentation Team</author>
|
||||
<author email="dev@commons.apache.org">Apache Commons Team</author>
|
||||
</properties>
|
||||
<body>
|
||||
|
||||
@@ -64,6 +66,7 @@ limitations under the License.
|
||||
<p>
|
||||
If you would like to report a bug, or raise an enhancement request with
|
||||
Apache Commons Logging please do the following:
|
||||
</p>
|
||||
<ol>
|
||||
<li><a href="https://issues.apache.org/jira/secure/IssueNavigator.jspa?reset=true&pid=12310484&sorter/field=issuekey&sorter/order=DESC&status=1&status=3&status=4">Search existing open bugs</a>.
|
||||
If you find your issue listed then please add a comment with your details.</li>
|
||||
@@ -73,16 +76,15 @@ limitations under the License.
|
||||
<li>Submit either a <a href="https://issues.apache.org/jira/secure/CreateIssueDetails!init.jspa?pid=12310484&issuetype=1&priority=4&assignee=-1">bug report</a>
|
||||
or <a href="https://issues.apache.org/jira/secure/CreateIssueDetails!init.jspa?pid=12310484&issuetype=4&priority=4&assignee=-1">enhancement request</a>.</li>
|
||||
</ol>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Please also remember these points:
|
||||
</p>
|
||||
<ul>
|
||||
<li>the more information you provide, the better we can help you</li>
|
||||
<li>test cases are vital, particularly for any proposed enhancements</li>
|
||||
<li>the developers of Apache Commons Logging are all unpaid volunteers</li>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
For more information on creating patches see the
|
||||
@@ -91,12 +93,12 @@ limitations under the License.
|
||||
|
||||
<p>
|
||||
You may also find these links useful:
|
||||
</p>
|
||||
<ul>
|
||||
<li><a href="https://issues.apache.org/jira/secure/IssueNavigator.jspa?reset=true&pid=12310484&sorter/field=issuekey&sorter/order=DESC&status=1&status=3&status=4">All Open Apache Commons Logging bugs</a></li>
|
||||
<li><a href="https://issues.apache.org/jira/secure/IssueNavigator.jspa?reset=true&pid=12310484&sorter/field=issuekey&sorter/order=DESC&status=5&status=6">All Resolved Apache Commons Logging bugs</a></li>
|
||||
<li><a href="https://issues.apache.org/jira/secure/IssueNavigator.jspa?reset=true&pid=12310484&sorter/field=issuekey&sorter/order=DESC">All Apache Commons Logging bugs</a></li>
|
||||
</ul>
|
||||
</p>
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
||||
|
||||
@@ -15,8 +15,9 @@ 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.
|
||||
-->
|
||||
<document>
|
||||
|
||||
<document xmlns="http://maven.apache.org/XDOC/2.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd">
|
||||
<properties>
|
||||
<title>JUnit Test Results</title>
|
||||
<author email="dev@commons.apache.org">Commons Documentation Team</author>
|
||||
|
||||
@@ -7,7 +7,7 @@ The ASF licenses this file to You 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
|
||||
https://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,
|
||||
@@ -39,10 +39,12 @@ limitations under the License.
|
||||
| |
|
||||
+======================================================================+
|
||||
-->
|
||||
<document>
|
||||
<document xmlns="http://maven.apache.org/XDOC/2.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd">
|
||||
<properties>
|
||||
<title>Apache Commons Logging Mailing Lists</title>
|
||||
<author email="dev@commons.apache.org">Apache Commons Documentation Team</author>
|
||||
<author email="dev@commons.apache.org">Apache Commons Team</author>
|
||||
</properties>
|
||||
<body>
|
||||
|
||||
@@ -53,10 +55,10 @@ limitations under the License.
|
||||
To make it easier for people to only read messages related to components they are interested in,
|
||||
the convention in Commons is to prefix the subject line of messages with the component's name,
|
||||
for example:
|
||||
<ul>
|
||||
<li>[logging] Problem with the ...</li>
|
||||
</ul>
|
||||
</p>
|
||||
<ul>
|
||||
<li>[logging] Problem with the ...</li>
|
||||
</ul>
|
||||
<p>
|
||||
Questions related to the usage of Apache Commons Logging should be posted to the
|
||||
<a href="https://lists.apache.org/list.html?user@commons.apache.org">User List</a>.
|
||||
|
||||
@@ -17,7 +17,9 @@
|
||||
|
||||
-->
|
||||
|
||||
<document>
|
||||
<document xmlns="http://maven.apache.org/XDOC/2.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd">
|
||||
<properties>
|
||||
<title>Proposal for Logging Library Package</title>
|
||||
</properties>
|
||||
@@ -51,21 +53,21 @@ implementations.
|
||||
|
||||
<p>
|
||||
The package should :
|
||||
</p>
|
||||
<ul>
|
||||
<li>Have an API which should be as simple to use as possible</li>
|
||||
<li>Provide support for Log4j</li>
|
||||
<li>Provide pluggable support for other logging APIs</li>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Non-goals:
|
||||
</p>
|
||||
<ul>
|
||||
<li>This package will not perform logging itself, except at the most basic
|
||||
level.</li>
|
||||
<li>We do not seek to become a "standard" API.</li>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
</subsection>
|
||||
<subsection name="(1.5) Interaction With Other Packages">
|
||||
|
||||
@@ -17,8 +17,9 @@ See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<document>
|
||||
|
||||
<document xmlns="http://maven.apache.org/XDOC/2.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd">
|
||||
<properties>
|
||||
<title>Technology Guide</title>
|
||||
<author email="dev@commons.apache.org">Commons Documentation Team</author>
|
||||
|
||||
@@ -19,8 +19,9 @@
|
||||
|
||||
-->
|
||||
|
||||
<document>
|
||||
|
||||
<document xmlns="http://maven.apache.org/XDOC/2.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd">
|
||||
<properties>
|
||||
<title>Troubleshooting Guide</title>
|
||||
<author email="dev@commons.apache.org">Commons Documentation Team</author>
|
||||
@@ -37,7 +38,6 @@
|
||||
<ul>
|
||||
<li>
|
||||
<a href="#When To Use Diagnostic Logging">When To Use Diagnostic Logging</a>
|
||||
<ul/>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#How To Use Diagnostic logging">How To Use Diagnostic logging</a>
|
||||
@@ -86,15 +86,12 @@
|
||||
<ul>
|
||||
<li>
|
||||
<a href="#Apache Tomcat">Apache Tomcat</a>
|
||||
<ul/>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#JBoss Application Server">JBoss Application Server</a>
|
||||
<ul/>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Other Containers">Other Containers</a>
|
||||
<ul/>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
@@ -134,19 +131,19 @@ Diagnostics uses the concept of an Object ID (OID). This allows the identity of
|
||||
to be tracked without relying on useful <code>toString</code> implementations.
|
||||
These are of the form:
|
||||
</p>
|
||||
<code><pre>
|
||||
<code>
|
||||
<em>classname</em>@<em>system identity hash code</em>
|
||||
</pre></code>
|
||||
</code>
|
||||
<p>
|
||||
The <em>system identity hash code</em> is found by calling <code>System.identityHashCode()</code>
|
||||
which should uniquely identify a particular instance. The classname is usually the fully qualified
|
||||
class name though in a few cases, <code>org.apache.commons.logging.impl.LogFactoryImpl</code> may be
|
||||
shortened to <code>LogFactoryImpl</code> to increase ease of reading. For example:
|
||||
</p>
|
||||
<code><pre>
|
||||
<code>
|
||||
sun.misc.Launcher$AppClassLoader@20120943
|
||||
LogFactoryImpl@1671711
|
||||
</pre></code>
|
||||
</code>
|
||||
<p>
|
||||
OIDs are intended to be used to cross-reference. They allow particular instances of classloaders
|
||||
and JCL classes to be tracked in different contexts. This plays a vital role in building
|
||||
@@ -158,9 +155,9 @@ up the understanding of the classloader environment required to diagnose JCL pro
|
||||
Each diagnostic message is prefixed with details of the relevant class in a standard format.
|
||||
This takes the form:
|
||||
</p>
|
||||
<code><pre>
|
||||
<code>
|
||||
[<em>class-identifier</em> from <em>ClassLoader OID</em>]
|
||||
</pre></code>
|
||||
</code>
|
||||
<p>
|
||||
<em>ClassLoader OID</em> is the <a href='#OIDs'>OID</a> of a classloader which loaded
|
||||
the class issuing the message.
|
||||
@@ -170,19 +167,19 @@ the class issuing the message.
|
||||
In the case of
|
||||
<code>LogFactory</code>, this is just <code>LogFactory</code>. For example (line split):
|
||||
</p>
|
||||
<code><pre>
|
||||
<code>
|
||||
[LogFactory
|
||||
from sun.misc.Launcher$AppClassLoader@20120943] BOOTSTRAP COMPLETED
|
||||
</pre></code>
|
||||
</code>
|
||||
<p>
|
||||
In the case of
|
||||
<code>LogFactoryImpl</code>, the prefix is the instance OID. This can be cross referenced
|
||||
to discover the details of the TCCL used to manage this instance. For example (line split):
|
||||
</p>
|
||||
<code><pre>
|
||||
<code>
|
||||
[LogFactoryImpl@1671711
|
||||
from sun.misc.Launcher$AppClassLoader@20120943] Instance created.
|
||||
</pre></code>
|
||||
</code>
|
||||
</subsection>
|
||||
<subsection name='ClassLoader Hierarchy Tree'>
|
||||
<p>
|
||||
@@ -193,12 +190,12 @@ Each classloader is represented (visually) by an OID (to allow cross referencing
|
||||
and the relationship indicated in <code><em>child</em> --> <em>parent</em></code> fashion.
|
||||
For example (line split for easy reading):
|
||||
</p>
|
||||
<code><pre>
|
||||
<code>
|
||||
ClassLoader tree:java.net.URLClassLoader@3526198
|
||||
--> sun.misc.Launcher$AppClassLoader@20120943 (SYSTEM)
|
||||
--> sun.misc.Launcher$ExtClassLoader@11126876
|
||||
--> BOOT
|
||||
</pre></code>
|
||||
</code>
|
||||
<p>
|
||||
Represents a hierarchy with four elements ending in the boot classloader.
|
||||
</p>
|
||||
@@ -216,15 +213,15 @@ are logged.
|
||||
<p>
|
||||
Many Sun classloaders have confusing <code>toString</code> values. For example, the OID may be
|
||||
</p>
|
||||
<code><pre>
|
||||
<code>
|
||||
sun.misc.Launcher$AppClassLoader@20120943
|
||||
</pre></code>
|
||||
</code>
|
||||
<p>
|
||||
with a <code>toString</code> value of
|
||||
</p>
|
||||
<code><pre>
|
||||
<code>
|
||||
sun.misc.Launcher$AppClassLoader@133056f
|
||||
</pre></code>
|
||||
</code>
|
||||
<p>
|
||||
Other classloader implementations may give very useful information (such as the local classpath).
|
||||
</p>
|
||||
@@ -252,7 +249,7 @@ allowing the <a href='#OIDs'>OID</a> later to be cross-referenced to the <code>t
|
||||
and the <a href='#ClassLoader%20Hierarchy%20Tree'>classloader tree</a>. For example, the
|
||||
following log snippet details the TCCL (lines split):
|
||||
</p>
|
||||
<code><pre>
|
||||
<code>
|
||||
[LogFactory from sun.misc.Launcher$AppClassLoader@20120943]
|
||||
[LOOKUP] LogFactory implementation requested for the first time for context
|
||||
classloader java.net.URLClassLoader@3526198
|
||||
@@ -263,7 +260,7 @@ following log snippet details the TCCL (lines split):
|
||||
--> sun.misc.Launcher$AppClassLoader@20120943 (SYSTEM)
|
||||
--> sun.misc.Launcher$ExtClassLoader@11126876
|
||||
--> BOOT
|
||||
</pre></code>
|
||||
</code>
|
||||
</subsection>
|
||||
<subsection name='Log Discovery Diagnostics'>
|
||||
<p>
|
||||
@@ -305,11 +302,11 @@ The Apache Commons team would be grateful if reports were posted to the developm
|
||||
of other containers using a custom implementation.
|
||||
</p>
|
||||
<subsection name='The Incompatible LogFactory Issue'>
|
||||
<subsection name='Symptoms'>
|
||||
<h4 id='Symptoms'>Symptoms</h4>
|
||||
<p>
|
||||
An exception is thrown by JCL with a message similar to:
|
||||
</p>
|
||||
<code><pre>
|
||||
<code>
|
||||
The chosen LogFactory implementation does not extend LogFactory. Please check your configuration.
|
||||
(Caused by java.lang.ClassCastException: The application has specified that a custom LogFactory
|
||||
implementation should be used but Class 'com.ibm.ws.commons.logging.TrLogFactory' cannot be converted
|
||||
@@ -319,14 +316,13 @@ of other containers using a custom implementation.
|
||||
LogFactory then it is likely that the container has set one without your knowledge.
|
||||
In this case, consider using the commons-logging-adapters.jar file or specifying the standard
|
||||
LogFactory from the command line. Help can be found @https//commons.apache.org/logging.
|
||||
</pre></code>
|
||||
</code>
|
||||
<p>
|
||||
This is a WebSphere example so the name of the custom LogFactory is
|
||||
<code>com.ibm.ws.commons.logging.TrLogFactory</code>. For other containers, this class name will
|
||||
differ.
|
||||
</p>
|
||||
</subsection>
|
||||
<subsection name='Explanation'>
|
||||
<h4 id='Explanation'>Explanation</h4>
|
||||
<p>
|
||||
A custom <code>LogFactory</code> implementation can only be used if the implementation class loaded
|
||||
dynamically at runtime can be cast to the <code>LogFactory</code> class that loaded it. There are
|
||||
@@ -357,8 +353,7 @@ containers which have custom implementations: the above runtime exception may be
|
||||
under certain classloading policies without the user knowingly specifying a custom
|
||||
implementation.
|
||||
</p>
|
||||
</subsection>
|
||||
<subsection name='Fixes'>
|
||||
<h4 id='Fixes'>Fixes</h4>
|
||||
<p>
|
||||
There are various ways to fix this problem. Which fix is right depends on the circumstances.
|
||||
</p>
|
||||
@@ -371,9 +366,9 @@ implementation.
|
||||
If you want to bypass the container adaption mechanism then set the appropriate system property
|
||||
to the default value when the container is started:
|
||||
</p>
|
||||
<code><pre>
|
||||
<code>
|
||||
-Dorg.apache.commons.logging.LogFactory=org.apache.commons.logging.impl.LogFactoryImpl
|
||||
</pre></code>
|
||||
</code>
|
||||
<p>
|
||||
If you want to continue to use the default container mechanism then:
|
||||
</p>
|
||||
@@ -392,7 +387,6 @@ implementation.
|
||||
If you encounter difficulties when applying the fixes recommended, please turn on
|
||||
<a href='#Using JCL Diagnostics'>diagnostics</a> and consult the logs.
|
||||
</p>
|
||||
</subsection>
|
||||
</subsection>
|
||||
</section>
|
||||
<section name='Containers With Custom ClassLoading Behaviour for Logging'>
|
||||
|
||||
@@ -30,9 +30,9 @@ import junit.framework.TestCase;
|
||||
|
||||
public class WeakHashtableTestCase extends TestCase {
|
||||
|
||||
public static class StupidThread extends Thread {
|
||||
public static class TestThread extends Thread {
|
||||
|
||||
public StupidThread(final String name) {
|
||||
public TestThread(final String name) {
|
||||
super(name);
|
||||
}
|
||||
|
||||
@@ -183,7 +183,7 @@ public class WeakHashtableTestCase extends TestCase {
|
||||
for (int j=1; j <= OUTER_LOOP; j++) {
|
||||
hashtable = new WeakHashtable();
|
||||
for (int i = 0; i < t.length; i++) {
|
||||
t[i] = new StupidThread("Thread:" + i);
|
||||
t[i] = new TestThread("Thread:" + i);
|
||||
t[i].setDaemon(true); // Otherwise we cannot exit
|
||||
t[i].start();
|
||||
}
|
||||
|
||||
@@ -59,7 +59,6 @@ public abstract class StandardTests extends TestCase {
|
||||
* </ul>
|
||||
*
|
||||
* @param logEvents is the list of log events received.
|
||||
*
|
||||
* @param thrown False if logPlainMessages was called
|
||||
* (ie the TestAppender is expected to have received
|
||||
* logevents with no associated exception info). True if
|
||||
|
||||
Reference in New Issue
Block a user