This is an automated email from the ASF dual-hosted git repository.

git-site-role pushed a commit to branch asf-staging
in repository https://gitbox.apache.org/repos/asf/logging-site.git


The following commit(s) were added to refs/heads/asf-staging by this push:
     new bfa32478 Automatic Site Publish by Buildbot
bfa32478 is described below

commit bfa32478fa1843bbdcae338a5b924eda3dbeb3b6
Author: buildbot <[email protected]>
AuthorDate: Thu Nov 30 19:15:43 2023 +0000

    Automatic Site Publish by Buildbot
---
 .../12/01/apache-common-logging-1.3.0.html}        | 137 ++++++++++++++------
 .../12/10/20-years-of-innovation.html}             |  88 +++++++------
 content/blog/index.html                            |  26 ++++
 content/feed.xml                                   | 140 ++++++++++++++++++++-
 4 files changed, 318 insertions(+), 73 deletions(-)

diff --git a/content/blog/index.html 
b/content/blog/2023/12/01/apache-common-logging-1.3.0.html
similarity index 54%
copy from content/blog/index.html
copy to content/blog/2023/12/01/apache-common-logging-1.3.0.html
index e1b96a76..2a1bc4a7 100644
--- a/content/blog/index.html
+++ b/content/blog/2023/12/01/apache-common-logging-1.3.0.html
@@ -151,50 +151,115 @@
 
 
 <div class="container">
-    <div class="content">
-        <div class="container">
     <div class="content">
       <div class="hero-unit">
+      
         
-        <h1>Apache Logging Services Blog</h1>
-        <p>Latest news from all Logging Services projects</p>
+        <h1>Upgrade to Apache Commons Logging 1.3.0</h1>
+        <p>Instructions to upgrade application to Apache Commons Logging 
1.3.0.</p>
       </div>
+      <time itemprop="datePublished" datetime="2023-12-01">
+        01 Dec 2023
+      </time>
+      
+      <div itemprop="text"><h1 id="apache-commons-logging">Apache Commons 
Logging</h1>
 
+<p><a href="https://commons.apache.org/proper/commons-logging/";>Apache Commons 
Logging</a> (JCL) is one of the oldest Java logging API
+available.
+Released for the first time in 2002, it immediately saw a widespread adoption 
in the Java community.</p>
 
-      <ul class="post-list">
-        
-        <li>
-            <div class="post-date">28 Nov 2023</div>
-            <div class="post-title"><a 
href="/blog/2023/11/28/new-pmc-member.html">Welcoming Stephen Webb to the 
Apache Logging Services PMC</a></div>
-            <div class="post-tags">
-                    <span class="post-tag">#Logging Services</span>
-                
-                    <span class="post-tag">#Apache</span>
-                
-                    <span class="post-tag">#Community</span>
-                
-                    <span class="post-tag">#Open Source</span>
-                </div>
-        </li>
-        
-        <li>
-            <div class="post-date">17 Nov 2023</div>
-            <div class="post-title"><a 
href="/blog/2023/11/17/flume-joins-logging-services.html">Welcoming Apache 
Flume to Apache Logging Services</a></div>
-            <div class="post-tags">
-                    <span class="post-tag">#Logging Services</span>
-                
-                    <span class="post-tag">#Flume</span>
-                </div>
-        </li>
-        
-        </ul>
-    </div>
-</div>
+<p>While newer APIs, like SLF4J and our own Log4j API, appeared over time, 
even in 2023 it is hard to find an application stack
+that does not depend on JCL.
+According to Sonatype, Apache Commons Logging is used in <a 
href="https://central.sonatype.com/artifact/commons-logging/commons-logging";>over
 1 million artifacts</a>,
+while the second place is taken by SLF4J with <a 
href="https://central.sonatype.com/artifact/org.slf4j/slf4j-api";>almost 40 
thousand artifacts</a>.</p>
 
+<h2 id="version-130">Version 1.3.0</h2>
 
-    </div>    
-</div>
+<p>After more than 9 years since its previous release (version 1.2 released in 
July 2014), Apache Commons Logging released
+a new 1.3.0 version today (cf. <a 
href="https://lists.apache.org/thread/XXX";>announcement</a>).
+Among the most prominent changes, the new version:</p>
+
+<ul>
+  <li>forwards logging to the Log4j API out-of-the-box (if present),</li>
+  <li>also supports forwarding to SLF4J,</li>
+  <li>adds support for the Java Platform Module System (JPMS) with the module 
name <code class="language-plaintext 
highlighter-rouge">org.apache.commons.logging</code>.</li>
+</ul>
+
+<h2 id="upgrade-instructions-log4j-corelogback">Upgrade instructions (Log4j 
Core/Logback)</h2>
+
+<p>The upgrade path for users of the Log4j Core and Logback logging backends 
is easy.
+The first step is upgrading <code class="language-plaintext 
highlighter-rouge">commons-logging</code>.
+In Maven this can be done using dependency management.</p>
+
+<div class="language-xml highlighter-rouge"><div class="highlight"><pre 
class="highlight"><code><span class="nt">&lt;dependencyManagement&gt;</span>
+    <span class="nt">&lt;dependencies&gt;</span>
+        <span class="nt">&lt;dependency&gt;</span>
+            <span class="nt">&lt;groupId&gt;</span>commons-logging<span 
class="nt">&lt;/groupId&gt;</span>
+            <span class="nt">&lt;artifactId&gt;</span>commons-logging<span 
class="nt">&lt;/artifactId&gt;</span>
+            <span class="nt">&lt;version&gt;</span>1.3.0<span 
class="nt">&lt;/version&gt;</span>
+        <span class="nt">&lt;/dependency&gt;</span>
+    <span class="nt">&lt;/dependencies&gt;</span>
+<span class="nt">&lt;/dependencyManagement&gt;</span>
+</code></pre></div></div>
+
+<p>The second step consists in removing obsolete dependencies.
+Since version 1.2 only supported old generation logging backends 
out-of-the-box (<a href="https//logging.apache.org/log4j/1.2/">Log4j 1.x</a>,
+<a href="https//avalon.apache.org">Avalon</a> and <a 
href="https://javalogging.sourceforge.net";>Lumberjack</a>), the Java community 
developed
+many <code class="language-plaintext highlighter-rouge">LogFactory</code> 
implementations and complete Apache Commons Logging replacements:</p>
+
+<ul>
+  <li><a 
href="https://mvnrepository.com/artifact/org.slf4j/jcl-over-slf4j";><code 
class="language-plaintext 
highlighter-rouge">org.slf4j:jcl-over-slf4j</code></a> (replacement),</li>
+  <li><a 
href="https://mvnrepository.com/artifact/org.springframework/spring-jcl";><code 
class="language-plaintext 
highlighter-rouge">org.springframework:spring-jcl</code></a> (replacement),</li>
+  <li>our own <a 
href="https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-jcl";><code
 class="language-plaintext 
highlighter-rouge">org.apache.logging.log4j:log4j-jcl</code></a>
+(<code class="language-plaintext highlighter-rouge">LogFactory</code> 
implementation).</li>
+</ul>
+
+<p>These artifacts can be <strong>safely</strong> removed from your dependency 
stack.
+For JPMS users this operation is even <strong>required</strong>.</p>
 
+<p>To do so Maven users can use exclusions:</p>
+
+<div class="language-xml highlighter-rouge"><div class="highlight"><pre 
class="highlight"><code><span class="nt">&lt;dependency&gt;</span>
+    <span class="nt">&lt;groupId&gt;</span>org.springframework<span 
class="nt">&lt;/groupId&gt;</span>
+    <span class="nt">&lt;artifactId&gt;</span>spring-jcl<span 
class="nt">&lt;/artifactId&gt;</span>
+    <span class="nt">&lt;exclusions&gt;</span>
+        <span class="nt">&lt;exclusion&gt;</span>
+            <span class="nt">&lt;groupId&gt;</span>org.springframework<span 
class="nt">&lt;/groupId&gt;</span>
+            <span class="nt">&lt;artifactId&gt;</span>spring-jcl<span 
class="nt">&lt;/artifactId&gt;</span>
+        <span class="nt">&lt;/exclusion&gt;</span>
+    <span class="nt">&lt;/exclusions&gt;</span>
+<span class="nt">&lt;/dependency&gt;</span>
+</code></pre></div></div>
+
+<p>and to prevent regressions, add those dependencies to a <a 
href="https://maven.apache.org/enforcer/enforcer-rules/bannedDependencies.html";><code
 class="language-plaintext highlighter-rouge">bannedDependencies</code> Maven 
Enforcer rule</a>.</p>
+
+<h2 id="upgrade-instructions-log4j-1xreload4j-users">Upgrade instructions 
(Log4j 1.x/Reload4j users)</h2>
+
+<p>For users that use Log4j 1.x or Reload4j as logging backend the upgrade is 
more complicated: version 1.3.0 disabled the Log4j 1.x backend by default.</p>
+
+<p>Log4j 1.x/Reload4j users are:</p>
+
+<ul>
+  <li>encouraged to migrate to Log4j 2.x Core (cf. <a 
href="https://logging.apache.org/log4j/2.x/manual/migration.html";>migration 
guide</a>) or Logback,</li>
+  <li>if that is not possible (or if a transitional period is required) they 
need to add a <code class="language-plaintext 
highlighter-rouge">commons-logging.properties</code> file to their applications 
containing:</li>
+</ul>
+
+<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre 
class="highlight"><code>org.apache.commons.logging.Log = 
org.apache.commons.logging.impl.Log4JLogger
+</code></pre></div></div>
+
+<h2 id="jpms-users">JPMS users</h2>
+
+<p>The <code class="language-plaintext 
highlighter-rouge">org.apache.commons.logging</code> JPMS module has an 
<strong>optional</strong> dependency on the Log4j API.
+In order for the JVM to automatically add the <code class="language-plaintext 
highlighter-rouge">org.apache.logging.log4j</code> module to your application’s 
runtime, you need to add:</p>
+
+<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre 
class="highlight"><code>requires org.apache.logging.log4j;
+</code></pre></div></div>
+
+<p>to your application’s module descriptor.</p>
+
+</div>
+    </div>
+</div>
 
 <div class="footer">
     <div class="container">
@@ -228,4 +293,4 @@
 <noscript><p><img 
src="https://analytics.apache.org/matomo.php?idsite=42&amp;rec=1"; 
style="border:0;" alt="" /></p></noscript>
 <!-- End Matomo Code -->
 </body>
-</html>
+</html>
\ No newline at end of file
diff --git a/content/blog/index.html 
b/content/blog/2023/12/10/20-years-of-innovation.html
similarity index 73%
copy from content/blog/index.html
copy to content/blog/2023/12/10/20-years-of-innovation.html
index e1b96a76..5c68e353 100644
--- a/content/blog/index.html
+++ b/content/blog/2023/12/10/20-years-of-innovation.html
@@ -151,50 +151,66 @@
 
 
 <div class="container">
-    <div class="content">
-        <div class="container">
     <div class="content">
       <div class="hero-unit">
+      
         
-        <h1>Apache Logging Services Blog</h1>
-        <p>Latest news from all Logging Services projects</p>
+        <h1>Celebrating Two Decades of Innovation with Apache Log4j</h1>
+        <p>Marking 20 years of growth and resilience with Apache Log4j, from 
its inception in 2003 to the upcoming launch of Log4j 3.</p>
       </div>
+      <time itemprop="datePublished" datetime="2023-12-10">
+        10 Dec 2023
+      </time>
+      
+      <div itemprop="text"><h1 
id="two-decades-of-apache-log4j-a-journey-of-resilience-and-innovation">Two 
Decades of Apache Log4j: A Journey of Resilience and Innovation</h1>
 
+<p>December 2023 marks a significant milestone for the Apache Logging Services 
project, 
+as we celebrate 20 years since the inception of Log4j 1. This journey, 
spanning two
+decades, has been one of constant evolution, growth, and community spirit.</p>
 
-      <ul class="post-list">
-        
-        <li>
-            <div class="post-date">28 Nov 2023</div>
-            <div class="post-title"><a 
href="/blog/2023/11/28/new-pmc-member.html">Welcoming Stephen Webb to the 
Apache Logging Services PMC</a></div>
-            <div class="post-tags">
-                    <span class="post-tag">#Logging Services</span>
-                
-                    <span class="post-tag">#Apache</span>
-                
-                    <span class="post-tag">#Community</span>
-                
-                    <span class="post-tag">#Open Source</span>
-                </div>
-        </li>
-        
-        <li>
-            <div class="post-date">17 Nov 2023</div>
-            <div class="post-title"><a 
href="/blog/2023/11/17/flume-joins-logging-services.html">Welcoming Apache 
Flume to Apache Logging Services</a></div>
-            <div class="post-tags">
-                    <span class="post-tag">#Logging Services</span>
-                
-                    <span class="post-tag">#Flume</span>
-                </div>
-        </li>
-        
-        </ul>
-    </div>
-</div>
+<h2 id="a-timeline-of-success-and-learning">A Timeline of Success and 
Learning</h2>
 
+<p>From the early days of Log4j 1, we have witnessed numerous releases, 
+welcomed many new committers and PMC members, and seen the launch of various 
side
+projects as Log4xx, Chainsaw or Log4php. The recent addition of 
+Apache Flume has further broadened our suite of logging
+tools, showcasing our commitment to providing diverse and robust solutions.</p>
 
-    </div>    
-</div>
+<p>We are incredibly proud of the learning curve we experienced with Log4j 1. 
+Every mistake was a stepping stone towards the development of Log4j 2, 
+which has surpassed all our previous projects in scope and impact.</p>
+
+<h2 id="overcoming-challenges-together">Overcoming Challenges Together</h2>
 
+<p>The Log4shell incident was a critical period for us. However, the strength 
+and support of not only our community but also the global open-source 
community 
+were astounding. Together, we transformed a challenge into an opportunity to 
create
+the most secure logging framework to date. The extensive code reviews and 
+collaborative efforts post-Log4shell have significantly fortified 
+Log4j’s security features.</p>
+
+<h2 id="looking-ahead-with-excitement">Looking Ahead with Excitement</h2>
+
+<p>The future looks bright as we eagerly anticipate the release of Log4j 3. 
+Alongside, we are preparing for new versions of Apache Flume, a logging 
processor, 
+and other exciting side projects. These developments are a testament to our 
+commitment to innovation and excellence.</p>
+
+<h2 id="a-community-that-values-collaboration">A Community That Values 
Collaboration</h2>
+
+<p>At the heart of our success is our community spirit, perfectly encapsulated 
+in the Apache Software Foundation’s motto, “Community Over Code.” 
+This philosophy has been our guiding light, ensuring that we prioritize 
+collaboration, mutual respect, and collective growth.</p>
+
+<p>We warmly invite you to join us in this celebratory moment. Whether you 
+are a seasoned contributor or new to the open-source world, there is a 
+place for you in the Apache Logging Services community. Together, let’s 
+continue to innovate, learn, and build a future that echoes the resilience 
+and spirit of the past two decades.</p>
+</div>
+    </div>
+</div>
 
 <div class="footer">
     <div class="container">
@@ -228,4 +244,4 @@
 <noscript><p><img 
src="https://analytics.apache.org/matomo.php?idsite=42&amp;rec=1"; 
style="border:0;" alt="" /></p></noscript>
 <!-- End Matomo Code -->
 </body>
-</html>
+</html>
\ No newline at end of file
diff --git a/content/blog/index.html b/content/blog/index.html
index e1b96a76..c2a658f1 100644
--- a/content/blog/index.html
+++ b/content/blog/index.html
@@ -163,6 +163,32 @@
 
       <ul class="post-list">
         
+        <li>
+            <div class="post-date">10 Dec 2023</div>
+            <div class="post-title"><a 
href="/blog/2023/12/10/20-years-of-innovation.html">Celebrating Two Decades of 
Innovation with Apache Log4j</a></div>
+            <div class="post-tags">
+                    <span class="post-tag">#Apache Log4j</span>
+                
+                    <span class="post-tag">#Anniversary</span>
+                
+                    <span class="post-tag">#Open Source</span>
+                
+                    <span class="post-tag">#Community</span>
+                </div>
+        </li>
+        
+        <li>
+            <div class="post-date">01 Dec 2023</div>
+            <div class="post-title"><a 
href="/blog/2023/12/01/apache-common-logging-1.3.0.html">Upgrade to Apache 
Commons Logging 1.3.0</a></div>
+            <div class="post-tags">
+                    <span class="post-tag">#Apache</span>
+                
+                    <span class="post-tag">#Commmons Logging</span>
+                
+                    <span class="post-tag">#Open Source</span>
+                </div>
+        </li>
+        
         <li>
             <div class="post-date">28 Nov 2023</div>
             <div class="post-title"><a 
href="/blog/2023/11/28/new-pmc-member.html">Welcoming Stephen Webb to the 
Apache Logging Services PMC</a></div>
diff --git a/content/feed.xml b/content/feed.xml
index 2e59c61e..8430b702 100644
--- a/content/feed.xml
+++ b/content/feed.xml
@@ -1,4 +1,142 @@
-<?xml version="1.0" encoding="utf-8"?><feed 
xmlns="http://www.w3.org/2005/Atom"; ><generator uri="https://jekyllrb.com/"; 
version="4.2.2">Jekyll</generator><link href="/feed.xml" rel="self" 
type="application/atom+xml" /><link href="/" rel="alternate" type="text/html" 
/><updated>2023-11-30T14:23:57+00:00</updated><id>/feed.xml</id><title 
type="html">Apache Software Foundation - Logging 
Services</title><subtitle>Write an awesome description for your new site here. 
You can edit this line in _ [...]
+<?xml version="1.0" encoding="utf-8"?><feed 
xmlns="http://www.w3.org/2005/Atom"; ><generator uri="https://jekyllrb.com/"; 
version="4.2.2">Jekyll</generator><link href="/feed.xml" rel="self" 
type="application/atom+xml" /><link href="/" rel="alternate" type="text/html" 
/><updated>2023-11-30T19:15:42+00:00</updated><id>/feed.xml</id><title 
type="html">Apache Software Foundation - Logging 
Services</title><subtitle>Write an awesome description for your new site here. 
You can edit this line in _ [...]
+
+<p>December 2023 marks a significant milestone for the Apache Logging Services 
project, 
+as we celebrate 20 years since the inception of Log4j 1. This journey, 
spanning two
+decades, has been one of constant evolution, growth, and community spirit.</p>
+
+<h2 id="a-timeline-of-success-and-learning">A Timeline of Success and 
Learning</h2>
+
+<p>From the early days of Log4j 1, we have witnessed numerous releases, 
+welcomed many new committers and PMC members, and seen the launch of various 
side
+projects as Log4xx, Chainsaw or Log4php. The recent addition of 
+Apache Flume has further broadened our suite of logging
+tools, showcasing our commitment to providing diverse and robust solutions.</p>
+
+<p>We are incredibly proud of the learning curve we experienced with Log4j 1. 
+Every mistake was a stepping stone towards the development of Log4j 2, 
+which has surpassed all our previous projects in scope and impact.</p>
+
+<h2 id="overcoming-challenges-together">Overcoming Challenges Together</h2>
+
+<p>The Log4shell incident was a critical period for us. However, the strength 
+and support of not only our community but also the global open-source 
community 
+were astounding. Together, we transformed a challenge into an opportunity to 
create
+the most secure logging framework to date. The extensive code reviews and 
+collaborative efforts post-Log4shell have significantly fortified 
+Log4j’s security features.</p>
+
+<h2 id="looking-ahead-with-excitement">Looking Ahead with Excitement</h2>
+
+<p>The future looks bright as we eagerly anticipate the release of Log4j 3. 
+Alongside, we are preparing for new versions of Apache Flume, a logging 
processor, 
+and other exciting side projects. These developments are a testament to our 
+commitment to innovation and excellence.</p>
+
+<h2 id="a-community-that-values-collaboration">A Community That Values 
Collaboration</h2>
+
+<p>At the heart of our success is our community spirit, perfectly encapsulated 
+in the Apache Software Foundation’s motto, “Community Over Code.” 
+This philosophy has been our guiding light, ensuring that we prioritize 
+collaboration, mutual respect, and collective growth.</p>
+
+<p>We warmly invite you to join us in this celebratory moment. Whether you 
+are a seasoned contributor or new to the open-source world, there is a 
+place for you in the Apache Logging Services community. Together, let’s 
+continue to innovate, learn, and build a future that echoes the resilience 
+and spirit of the past two 
decades.</p>]]></content><author><name></name></author><category term="Apache 
Log4j" /><category term="Anniversary" /><category term="Open Source" 
/><category term="Community" /><summary type="html"><![CDATA[Marking 20 years 
of growth and resilience with Apache Log4j, from its inception in 2003 to the 
upcoming launch of Log4j 3.]]></summary></entry><entry><title 
type="html">Upgrade to Apache Commons Logging 1.3.0</title><link 
href="/blog/2023/12/01/apache-commo [...]
+
+<p><a href="https://commons.apache.org/proper/commons-logging/";>Apache Commons 
Logging</a> (JCL) is one of the oldest Java logging API
+available.
+Released for the first time in 2002, it immediately saw a widespread adoption 
in the Java community.</p>
+
+<p>While newer APIs, like SLF4J and our own Log4j API, appeared over time, 
even in 2023 it is hard to find an application stack
+that does not depend on JCL.
+According to Sonatype, Apache Commons Logging is used in <a 
href="https://central.sonatype.com/artifact/commons-logging/commons-logging";>over
 1 million artifacts</a>,
+while the second place is taken by SLF4J with <a 
href="https://central.sonatype.com/artifact/org.slf4j/slf4j-api";>almost 40 
thousand artifacts</a>.</p>
+
+<h2 id="version-130">Version 1.3.0</h2>
+
+<p>After more than 9 years since its previous release (version 1.2 released in 
July 2014), Apache Commons Logging released
+a new 1.3.0 version today (cf. <a 
href="https://lists.apache.org/thread/XXX";>announcement</a>).
+Among the most prominent changes, the new version:</p>
+
+<ul>
+  <li>forwards logging to the Log4j API out-of-the-box (if present),</li>
+  <li>also supports forwarding to SLF4J,</li>
+  <li>adds support for the Java Platform Module System (JPMS) with the module 
name <code class="language-plaintext 
highlighter-rouge">org.apache.commons.logging</code>.</li>
+</ul>
+
+<h2 id="upgrade-instructions-log4j-corelogback">Upgrade instructions (Log4j 
Core/Logback)</h2>
+
+<p>The upgrade path for users of the Log4j Core and Logback logging backends 
is easy.
+The first step is upgrading <code class="language-plaintext 
highlighter-rouge">commons-logging</code>.
+In Maven this can be done using dependency management.</p>
+
+<div class="language-xml highlighter-rouge"><div class="highlight"><pre 
class="highlight"><code><span class="nt">&lt;dependencyManagement&gt;</span>
+    <span class="nt">&lt;dependencies&gt;</span>
+        <span class="nt">&lt;dependency&gt;</span>
+            <span class="nt">&lt;groupId&gt;</span>commons-logging<span 
class="nt">&lt;/groupId&gt;</span>
+            <span class="nt">&lt;artifactId&gt;</span>commons-logging<span 
class="nt">&lt;/artifactId&gt;</span>
+            <span class="nt">&lt;version&gt;</span>1.3.0<span 
class="nt">&lt;/version&gt;</span>
+        <span class="nt">&lt;/dependency&gt;</span>
+    <span class="nt">&lt;/dependencies&gt;</span>
+<span class="nt">&lt;/dependencyManagement&gt;</span>
+</code></pre></div></div>
+
+<p>The second step consists in removing obsolete dependencies.
+Since version 1.2 only supported old generation logging backends 
out-of-the-box (<a href="https//logging.apache.org/log4j/1.2/">Log4j 1.x</a>,
+<a href="https//avalon.apache.org">Avalon</a> and <a 
href="https://javalogging.sourceforge.net";>Lumberjack</a>), the Java community 
developed
+many <code class="language-plaintext highlighter-rouge">LogFactory</code> 
implementations and complete Apache Commons Logging replacements:</p>
+
+<ul>
+  <li><a 
href="https://mvnrepository.com/artifact/org.slf4j/jcl-over-slf4j";><code 
class="language-plaintext 
highlighter-rouge">org.slf4j:jcl-over-slf4j</code></a> (replacement),</li>
+  <li><a 
href="https://mvnrepository.com/artifact/org.springframework/spring-jcl";><code 
class="language-plaintext 
highlighter-rouge">org.springframework:spring-jcl</code></a> (replacement),</li>
+  <li>our own <a 
href="https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-jcl";><code
 class="language-plaintext 
highlighter-rouge">org.apache.logging.log4j:log4j-jcl</code></a>
+(<code class="language-plaintext highlighter-rouge">LogFactory</code> 
implementation).</li>
+</ul>
+
+<p>These artifacts can be <strong>safely</strong> removed from your dependency 
stack.
+For JPMS users this operation is even <strong>required</strong>.</p>
+
+<p>To do so Maven users can use exclusions:</p>
+
+<div class="language-xml highlighter-rouge"><div class="highlight"><pre 
class="highlight"><code><span class="nt">&lt;dependency&gt;</span>
+    <span class="nt">&lt;groupId&gt;</span>org.springframework<span 
class="nt">&lt;/groupId&gt;</span>
+    <span class="nt">&lt;artifactId&gt;</span>spring-jcl<span 
class="nt">&lt;/artifactId&gt;</span>
+    <span class="nt">&lt;exclusions&gt;</span>
+        <span class="nt">&lt;exclusion&gt;</span>
+            <span class="nt">&lt;groupId&gt;</span>org.springframework<span 
class="nt">&lt;/groupId&gt;</span>
+            <span class="nt">&lt;artifactId&gt;</span>spring-jcl<span 
class="nt">&lt;/artifactId&gt;</span>
+        <span class="nt">&lt;/exclusion&gt;</span>
+    <span class="nt">&lt;/exclusions&gt;</span>
+<span class="nt">&lt;/dependency&gt;</span>
+</code></pre></div></div>
+
+<p>and to prevent regressions, add those dependencies to a <a 
href="https://maven.apache.org/enforcer/enforcer-rules/bannedDependencies.html";><code
 class="language-plaintext highlighter-rouge">bannedDependencies</code> Maven 
Enforcer rule</a>.</p>
+
+<h2 id="upgrade-instructions-log4j-1xreload4j-users">Upgrade instructions 
(Log4j 1.x/Reload4j users)</h2>
+
+<p>For users that use Log4j 1.x or Reload4j as logging backend the upgrade is 
more complicated: version 1.3.0 disabled the Log4j 1.x backend by default.</p>
+
+<p>Log4j 1.x/Reload4j users are:</p>
+
+<ul>
+  <li>encouraged to migrate to Log4j 2.x Core (cf. <a 
href="https://logging.apache.org/log4j/2.x/manual/migration.html";>migration 
guide</a>) or Logback,</li>
+  <li>if that is not possible (or if a transitional period is required) they 
need to add a <code class="language-plaintext 
highlighter-rouge">commons-logging.properties</code> file to their applications 
containing:</li>
+</ul>
+
+<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre 
class="highlight"><code>org.apache.commons.logging.Log = 
org.apache.commons.logging.impl.Log4JLogger
+</code></pre></div></div>
+
+<h2 id="jpms-users">JPMS users</h2>
+
+<p>The <code class="language-plaintext 
highlighter-rouge">org.apache.commons.logging</code> JPMS module has an 
<strong>optional</strong> dependency on the Log4j API.
+In order for the JVM to automatically add the <code class="language-plaintext 
highlighter-rouge">org.apache.logging.log4j</code> module to your application’s 
runtime, you need to add:</p>
+
+<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre 
class="highlight"><code>requires org.apache.logging.log4j;
+</code></pre></div></div>
+
+<p>to your application’s module 
descriptor.</p>]]></content><author><name></name></author><category 
term="Apache" /><category term="Commmons Logging" /><category term="Open 
Source" /><summary type="html"><![CDATA[Instructions to upgrade application to 
Apache Commons Logging 1.3.0.]]></summary></entry><entry><title 
type="html">Welcoming Stephen Webb to the Apache Logging Services 
PMC</title><link href="/blog/2023/11/28/new-pmc-member.html" rel="alternate" 
type="text/html" title="Welcoming [...]
 
 <p>We are thrilled to take this moment to celebrate and acknowledge Stephen 
Webb, 
 who joined the Apache Logging Services community back in 2020. 

Reply via email to