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

garydgregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-lang.git


The following commit(s) were added to refs/heads/master by this push:
     new 42bd1f218 Prepare for the release candidate
42bd1f218 is described below

commit 42bd1f218caf86df139b08d010334e97392af80d
Author: Gary Gregory <[email protected]>
AuthorDate: Sun Nov 8 14:00:49 2026 +0000

    Prepare for the release candidate
---
 CONTRIBUTING.md                  |   2 +-
 README.md                        |   4 +-
 RELEASE-NOTES.txt                | 103 +++++++++++++++++++++++++++++++++++++++
 src/changes/changes.xml          |   2 +-
 src/site/xdoc/download_lang.xml  |  26 +++++-----
 src/site/xdoc/issue-tracking.xml |   4 +-
 6 files changed, 122 insertions(+), 19 deletions(-)

diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 29c9ece8a..54d921d68 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -61,7 +61,7 @@ Making Changes
 
 + Create a _topic branch_ for your isolated work.
   * Usually, you should base your branch on the `master` branch.
-  * A good topic branch name can be the JIRA bug ID plus a keyword, e.g., 
`LANG-123-InputStream`.
+  * A good topic branch name can be the JIRA bug ID plus a keyword, for 
example, `LANG-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.
diff --git a/README.md b/README.md
index c839aea44..4e02304d6 100644
--- a/README.md
+++ b/README.md
@@ -45,7 +45,7 @@ Apache Commons Lang
 
 [![Java 
CI](https://github.com/apache/commons-lang/actions/workflows/maven.yml/badge.svg)](https://github.com/apache/commons-lang/actions/workflows/maven.yml)
 [![Maven 
Central](https://img.shields.io/maven-central/v/org.apache.commons/commons-lang3?label=Maven%20Central)](https://search.maven.org/artifact/org.apache.commons/commons-lang3)
-[![Javadocs](https://javadoc.io/badge/org.apache.commons/commons-lang3/3.21.0.svg)](https://javadoc.io/doc/org.apache.commons/commons-lang3/3.21.0)
+[![Javadocs](https://javadoc.io/badge/org.apache.commons/commons-lang3/3.22.0.svg)](https://javadoc.io/doc/org.apache.commons/commons-lang3/3.22.0)
 
[![CodeQL](https://github.com/apache/commons-lang/actions/workflows/codeql-analysis.yml/badge.svg)](https://github.com/apache/commons-lang/actions/workflows/codeql-analysis.yml)
 [![OpenSSF 
Scorecard](https://api.securityscorecards.dev/projects/github.com/apache/commons-lang/badge)](https://scorecard.dev/viewer/?uri=github.com/apache/commons-lang)
 
@@ -78,7 +78,7 @@ Alternatively, you can pull it from the central Maven 
repositories:
 <dependency>
   <groupId>org.apache.commons</groupId>
   <artifactId>commons-lang3</artifactId>
-  <version>3.21.0</version>
+  <version>3.22.0</version>
 </dependency>
 ```
 
diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt
index 5141daec9..901c7c568 100644
--- a/RELEASE-NOTES.txt
+++ b/RELEASE-NOTES.txt
@@ -1,3 +1,106 @@
+
+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.
+
+Apache Commons Lang 3.22.0 Release Notes
+----------------------------------------
+
+The Apache Commons Lang team is pleased to announce the release of Apache 
Commons Lang 3.22.0.
+
+Apache Commons Lang is a package of Java utility classes for the Java lang 
packages,
+classes that could be considered standard to justify their existence in 
java.lang.
+
+The code is tested using the latest revision of the JDK for supported LTS 
releases: 8, 11, 17, 21, and 25.
+See 
https://github.com/apache/commons-lang/blob/master/.github/workflows/maven.yml
+
+Please ensure your build environment is up-to-date and kindly report any build 
issues.
+
+Starting with Commons Lang 3.9, we target Java 8 and use those features.
+
+For advice on upgrading from 2.x to 3.x, see 
https://commons.apache.org/lang/article3_0.html
+
+This is a feature and maintenance release. Java 8 or later is required.
+
+Changes in this version include:
+
+New features:
+* LANG-1790: Add optional FIFO ordering for TimedSemaphore blocking 
acquisitions. Thanks to Mert Kirpici, Ivan ?ari?, Gary Gregory.
+
+Fixed Bugs:
+*            Include 0x7E (~) in RandomStringUtils nextGraph and nextPrint 
(#1808). Thanks to alhuda, Gary Gregory.
+*            Default unbounded WildcardType upper bound to Object in TypeUtils 
(#1807). Thanks to alhuda, Gary Gregory.
+*            Take FastDatePrinter era names from the locale's calendar 
(#1800). Thanks to alhuda, Gary Gregory.
+* LANG-1655: Preserve Korean text in stripAccents (#1799). Thanks to Efe, Gary 
Gregory.
+* LANG-1835: Ignore synthetic methods in AnnotationUtils (#1810). Thanks to 
William Degrange, zemiles, Gary Gregory.
+* LANG-1836: Make TypeUtils.containsTypeVariables and unrollVariables honour 
the owner type of a ParameterizedType (#1812). Thanks to William Degrange, 
Sharang Gupta, Gary Gregory.
+*            Recurse into nested annotation arrays in AnnotationUtils.hashCode 
(#1814). Thanks to alhuda, Gary Gregory.
+*            [javadoc] Correct CharUtils default-value conversion descriptions 
(#1816). Thanks to Tarun Kishore, Gary Gregory.
+*            Preserve enclosing context and member names in 
ClassUtils.getShortClassName(Class) (#1818). Thanks to alhuda, Gary Gregory.
+*            Keep RandomUtils's randomDouble() and randomFloat() below the 
exclusive upper bound (#1817). Thanks to alhuda, Gary Gregory.
+*            Use standalone month names for month-only patterns in 
FastDatePrinter (#1815). Thanks to alhuda, Gary Gregory.
+*            Fix TypeUtils.isAssignable rejecting Class<X> to Class<?> 
assignments (#1820). Thanks to XenoAmess, Gary Gregory.
+* LANG-1837: Prevent null returns from lazily initialized string caches. 
Thanks to Aosen Xiong, Gary Gregory.
+*            Escape CharSequence values in ToStringStyle.JSON_STYLE (#1821). 
Thanks to alhuda, Gary Gregory.
+* LANG-796:  Clarify DateUtils calendar arithmetic and daylight saving time 
behavior. Thanks to Nicola Barbiero, Adrian Crum, Thomas Neidhart, Joerg 
Schaible, Duncan Jones, Josh Chaitin-Pollak, gaurav kumar pandey, Gary Gregory.
+*            Treat an unmatched quote as closed in ExtendedMessageFormat 
(#1819). Thanks to alhuda, Gary Gregory.
+*            Prevent StringUtils padding from splitting surrogate pairs 
(#1813). Thanks to gaurav kumar pandey, Gary Gregory.
+* LANG-441:  DateUtils Javadoc does not fully define round() behavior. Thanks 
to Sebb, Valentin Rocher, Adarsh Kumar Omrey, Gary Gregory.
+* LANG-1838: Fix resource paths for unnamed packages (#1824). Thanks to Aryan 
R. Ganjoo, Gary Gregory.
+*            Keep EventCountCircuitBreaker event count from wrapping on int 
overflow (#1825). Thanks to alhuda, Gary Gregory.
+*            Reject varargs candidates with too few arguments in MemberUtils 
(#1828). Thanks to alhuda, Gary Gregory.
+* LANG-1323: Align built type hashes with JDK reflection (#1826). Thanks to 
Aryan R. Ganjoo, Gary Gregory.
+*            Keep array encoding intact in ClassUtils.getAbbreviatedName 
(#1829). Thanks to alhuda, Gary Gregory.
+*            Reject leading whitespace in NumberUtils.createNumber (#1833). 
Thanks to alhuda, Gary Gregory.
+*            Keep StrSubstitutor from treating a value's trailing $ as an 
escape (#1834). Thanks to alhuda, Gary Gregory.
+*            Fix FastDateParser normalization of out-of-range ISO day-of-week 
values (#1839). Thanks to alhuda, Gary Gregory.
+*            [javadoc] Correct StringUtils example methods and overloads 
(#1836). Thanks to Aminark, Gary Gregory.
+*            Stop ExceptionUtils.removeCommonFrames at the first differing 
frame (#1831). Thanks to alhuda, Gary Gregory.
+*            Use StackTraceElement objects to build compact root cause stack 
traces, avoiding text parsing and preventing exception message text from being 
mistaken for stack frames. Thanks to Gary Gregory.
+*            Restrict LocaleUtils.toLocale to ASCII language, country, and 
numeric area codes; previously accepted non-ASCII codes now cause 
IllegalArgumentException (#1838). Thanks to alhuda, Gary Gregory.
+*            Deprecate ExceptionUtils.removeCommonFrames(), which is now used 
only by tests. Root-cause stack trace generation compares StackTraceElement 
objects directly. Thanks to Gary Gregory.
+*            Keep DateUtils.ceiling and round inside a DST overlap hour 
(#1842). Thanks to alhuda, Gary Gregory.
+*            Keep RandomStringUtils.random rejection cap from failing valid 
ranges (#1843). Thanks to alhuda, Gary Gregory.
+*            [javadoc] Correct hexadecimal output examples in Conversion 
(#1844). Thanks to Pendela Phanindra Rao, Gary Gregory.
+*            Fix Conversion hex method Javadoc (#1845). Thanks to Mohd Irshad, 
Gary Gregory.
+*            Make FastDatePrinter time-zone tests deterministic (#1854). 
Thanks to Gary Gregory.
+* LANG-1839: Fix recursive toString traversal cleanup (#1855). Thanks to Gary 
Gregory, Raju Gupta.
+* LANG-1341: Javadoc: Clarify superclass equality in EqualsBuilder. Thanks to 
Gary Gregory, Reassoonn.
+* LANG-1423: Javadoc: Include wrapping operations in StringUtils overview 
(#1850). Thanks to Gary Gregory, Reassoonn.
+* LANG-980:  Use enum constants for duration format units in 
DurationFormatUtils. Thanks to Gary Gregory, Sebb.
+* LANG-1198: Javadoc: Clarify stripEnd character-set semantics (#1851). Thanks 
to Gary Gregory, Reassoonn.
+*            Keep FastDateFormat able to parse the '+hh:mm' offsets its own 
'Z' patterns format (#1857). Thanks to Gary Gregory, simpleqt.
+*            Pad BMP code points to four hex digits in 
UnicodeEscaper.toUtf16Escape (#1858). Thanks to alhuda, Gary Gregory.
+
+Changes:
+*            Bump org.apache.commons:commons-parent from 105 to 107. Thanks to 
Gary Gregory.
+
+
+Historical list of changes: 
https://commons.apache.org/proper/commons-lang/changes.html
+
+For complete information on Apache Commons Lang, including instructions on how 
to submit bug reports,
+patches, or suggestions for improvement, see the Apache Commons Lang website:
+
+https://commons.apache.org/proper/commons-lang/
+
+Download page: https://commons.apache.org/proper/commons-lang/download_lang.cgi
+
+Have fun!
+Apache Commons Team
+
+-----------------------------------------------------------------------------
+
 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.
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index fdd1958ba..21e20bebe 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -44,7 +44,7 @@ The <action> type attribute can be add,update,fix,remove.
     <title>Apache Commons Lang Release Notes</title>
   </properties>
   <body>
-  <release version="3.22.0" date="YYYY-MM-DD" description="This is a feature 
and maintenance release. Java 8 or later is required.">
+  <release version="3.22.0" date="2026-11-08" description="This is a feature 
and maintenance release. Java 8 or later is required.">
     <!-- FIX -->
     <action                   type="fix" dev="ggregory" due-to="alhuda, Gary 
Gregory">Include 0x7E (~) in RandomStringUtils nextGraph and nextPrint 
(#1808).</action>
     <action                   type="fix" dev="ggregory" due-to="alhuda, Gary 
Gregory">Default unbounded WildcardType upper bound to Object in TypeUtils 
(#1807).</action>
diff --git a/src/site/xdoc/download_lang.xml b/src/site/xdoc/download_lang.xml
index 11b5b7c4b..e5e51779e 100644
--- a/src/site/xdoc/download_lang.xml
+++ b/src/site/xdoc/download_lang.xml
@@ -115,32 +115,32 @@ limitations under the License.
       </p>
     </subsection>
     </section>
-    <section name="Apache Commons Lang 3.21.0 (Java 8+)">
+    <section name="Apache Commons Lang 3.22.0 (Java 8+)">
       <subsection name="Binaries">
         <table>
           <tr>
-              <td><a 
href="[preferred]/commons/lang/binaries/commons-lang3-3.21.0-bin.tar.gz">commons-lang3-3.21.0-bin.tar.gz</a></td>
-              <td><a 
href="https://downloads.apache.org/commons/lang/binaries/commons-lang3-3.21.0-bin.tar.gz.sha512";>sha512</a></td>
-              <td><a 
href="https://downloads.apache.org/commons/lang/binaries/commons-lang3-3.21.0-bin.tar.gz.asc";>pgp</a></td>
+              <td><a 
href="[preferred]/commons/lang/binaries/commons-lang3-3.22.0-bin.tar.gz">commons-lang3-3.22.0-bin.tar.gz</a></td>
+              <td><a 
href="https://downloads.apache.org/commons/lang/binaries/commons-lang3-3.22.0-bin.tar.gz.sha512";>sha512</a></td>
+              <td><a 
href="https://downloads.apache.org/commons/lang/binaries/commons-lang3-3.22.0-bin.tar.gz.asc";>pgp</a></td>
           </tr>
           <tr>
-              <td><a 
href="[preferred]/commons/lang/binaries/commons-lang3-3.21.0-bin.zip">commons-lang3-3.21.0-bin.zip</a></td>
-              <td><a 
href="https://downloads.apache.org/commons/lang/binaries/commons-lang3-3.21.0-bin.zip.sha512";>sha512</a></td>
-              <td><a 
href="https://downloads.apache.org/commons/lang/binaries/commons-lang3-3.21.0-bin.zip.asc";>pgp</a></td>
+              <td><a 
href="[preferred]/commons/lang/binaries/commons-lang3-3.22.0-bin.zip">commons-lang3-3.22.0-bin.zip</a></td>
+              <td><a 
href="https://downloads.apache.org/commons/lang/binaries/commons-lang3-3.22.0-bin.zip.sha512";>sha512</a></td>
+              <td><a 
href="https://downloads.apache.org/commons/lang/binaries/commons-lang3-3.22.0-bin.zip.asc";>pgp</a></td>
           </tr>
         </table>
       </subsection>
       <subsection name="Source">
         <table>
           <tr>
-              <td><a 
href="[preferred]/commons/lang/source/commons-lang3-3.21.0-src.tar.gz">commons-lang3-3.21.0-src.tar.gz</a></td>
-              <td><a 
href="https://downloads.apache.org/commons/lang/source/commons-lang3-3.21.0-src.tar.gz.sha512";>sha512</a></td>
-              <td><a 
href="https://downloads.apache.org/commons/lang/source/commons-lang3-3.21.0-src.tar.gz.asc";>pgp</a></td>
+              <td><a 
href="[preferred]/commons/lang/source/commons-lang3-3.22.0-src.tar.gz">commons-lang3-3.22.0-src.tar.gz</a></td>
+              <td><a 
href="https://downloads.apache.org/commons/lang/source/commons-lang3-3.22.0-src.tar.gz.sha512";>sha512</a></td>
+              <td><a 
href="https://downloads.apache.org/commons/lang/source/commons-lang3-3.22.0-src.tar.gz.asc";>pgp</a></td>
           </tr>
           <tr>
-              <td><a 
href="[preferred]/commons/lang/source/commons-lang3-3.21.0-src.zip">commons-lang3-3.21.0-src.zip</a></td>
-              <td><a 
href="https://downloads.apache.org/commons/lang/source/commons-lang3-3.21.0-src.zip.sha512";>sha512</a></td>
-              <td><a 
href="https://downloads.apache.org/commons/lang/source/commons-lang3-3.21.0-src.zip.asc";>pgp</a></td>
+              <td><a 
href="[preferred]/commons/lang/source/commons-lang3-3.22.0-src.zip">commons-lang3-3.22.0-src.zip</a></td>
+              <td><a 
href="https://downloads.apache.org/commons/lang/source/commons-lang3-3.22.0-src.zip.sha512";>sha512</a></td>
+              <td><a 
href="https://downloads.apache.org/commons/lang/source/commons-lang3-3.22.0-src.zip.asc";>pgp</a></td>
           </tr>
         </table>
       </subsection>
diff --git a/src/site/xdoc/issue-tracking.xml b/src/site/xdoc/issue-tracking.xml
index e1c1d8ff4..8572b71eb 100644
--- a/src/site/xdoc/issue-tracking.xml
+++ b/src/site/xdoc/issue-tracking.xml
@@ -58,13 +58,13 @@ limitations under the License.
 
       <p>
       To use JIRA, you may need to <a 
href="https://issues.apache.org/jira/secure/Signup!default.jspa";>create an 
account</a>
-      (if you have previously created/updated Commons issues using Bugzilla, 
an account will have been automatically
+      (if you have previously created or updated Commons issues using 
Bugzilla, an account will have been automatically
       created and you can use the <a 
href="https://issues.apache.org/jira/secure/ForgotPassword!default.jspa";>Forgot 
Password</a>
       page to get a new password).
       </p>
 
       <p>
-      If you would like to report a bug, or raise an enhancement request with
+      If you would like to report a bug or request an enhancement for
       Apache Commons Lang, please do the following:
       </p>
       <ol>

Reply via email to