You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by Gary Gregory <ga...@gmail.com> on 2026/09/22 12:37:49 UTC
[VOTE] Release Apache Commons Lang 3.21.0 based on RC1
We have fixed a few bugs and added enhancements since the release of
Apache Commons Lang 3.20.0, so I would like to release Apache Commons
Lang 3.21.0.
Apache Commons Lang 3.21.0 RC1 is available for review here:
https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1
(svn revision 87792)
The Git tag commons-lang-3.21.0-RC1 commit for this RC is
e9e546b0c442b55418fce822737f6f9a0dd292f1, which you can browse here:
https://gitbox.apache.org/repos/asf?p=commons-lang.git;a=commit;h=e9e546b0c442b55418fce822737f6f9a0dd292f1
You may checkout this tag using:
git clone https://gitbox.apache.org/repos/asf/commons-lang.git
--branch commons-lang-3.21.0-RC1 commons-lang-3.21.0-RC1
Maven artifacts are here:
https://repository.apache.org/content/repositories/orgapachecommons-1965/org/apache/commons/commons-lang3/3.21.0/
These are the artifacts and their hashes:
#Release SHA-512s
#Tue Sep 22 12:22:44 UTC 2026
commons-lang3-3.21.0-bin.tar.gz=6a081b8e73c818708cafc33a3cb85b316a70315ae71219e2a6f870043934cfd16686f66c740cb10d671f4eaa6277bd1bb16dc893d495ca684c0642faf931f3c3
commons-lang3-3.21.0-bin.zip=43ef924d857a2f3991235ddd84a251e4bbdb1245d0b926625794161e71dcffbbc5844c1e9c23e7da4eed9da24c9d1e032a7f79620ab70bc9d1bbb2b598fe34f9
commons-lang3-3.21.0-bom.json=ee343340e34e6493f0f18f5cd5a3f5b1030231613afc4b781b90f2e084b448114cd7fe5915b4bf8b0ece5ba477ddc4b085cd440389ee01ee95188a237415616c
commons-lang3-3.21.0-bom.xml=3665535f645ee227012b6a3d594e16d1e643d04357cb73fce70472e11b790b32ce75835d94dde9427c8c227092953bbd5e9aac722363884febe6757ddff1d875
commons-lang3-3.21.0-javadoc.jar=3db2e407b39c9557159f5293b06181724db324090c02e1499895fad8c9bd092ff91ad4d9ef52c79519809c9ca08ed5bd4fac72f2c3e53681b21c3ce871ebad98
commons-lang3-3.21.0-sources.jar=366230321cb2aeff70ef84c0dd301ce7c7ffaa0e56c69a7c385475779467a4771509337767082006e2e2a0a8c19a353b7a16a5e935bd780a8c789058aceed8db
commons-lang3-3.21.0-src.tar.gz=cbc0fad7c211da65bdc65ff6ca4ec10eb357be16c6d0c403bd97df5ec91ff52eb6f53ce02d6561ddccf01fffdd1c694ad2b420e208b273db502c4305512aefee
commons-lang3-3.21.0-src.zip=43330d0c34114b7b2c8e1aa65149f9dcc4c4b7fcd763eb5d616853a59f7f5c7bd9ce6750f67374c401e9ebcb714e9125bfb8352eca6ec90ca114689ff0ea7dec
commons-lang3-3.21.0-test-sources.jar=2a7049d5866efd152cd5c2b3ccb347c123eb831a0f2c85b75ad570b1862cd1794dc0947aafb49d75e38616f06d6e7934ac5db90c6d6c3fe2fc588aeb9f44bb22
commons-lang3-3.21.0-tests.jar=c458be473d3f968c388adef0474fb102fc7603cb4a9468a58cf6258aa69641fdd3b53158c96678d7e54821efde5d482c128d10a4432727fde839cf2809b0b55e
org.apache.commons_commons-lang3-3.21.0.spdx.json=e7e78f7d2628b77c125bb52420e8103883fd158294d95afe880337728b1f35476ece66f4050da0cdcaae362ff3fcd065995b36ecc9472347a29ffceea2c56306
I have tested this with 'mvn' and 'mvn clean install site' using:
openjdk version "25.0.4.1" 2026-08-18
OpenJDK Runtime Environment Homebrew (build 25.0.4.1)
OpenJDK 64-Bit Server VM Homebrew (build 25.0.4.1, mixed mode, sharing)
Apache Maven 3.9.16 (2bdd9fddda4b155ebf8000e807eb73fd829a51d5)
Maven home: /opt/homebrew/Cellar/maven/3.9.16/libexec
Java version: 25.0.4.1, vendor: Homebrew, runtime:
/opt/homebrew/Cellar/openjdk@25/25.0.4.1/libexec/openjdk.jdk/Contents/Home
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "26.7", arch: "aarch64", family: "mac"
Darwin Garys-MacBook-Pro.local 25.6.0 Darwin Kernel Version 25.6.0:
Tue Aug 18 17:48:46 PDT 2026;
root:xnu-12377.161.15.700.19~2/RELEASE_ARM64_T6041 arm64
Docker version 29.8.0, build 88096ef
I also tested a snapshot build with all Commons components that depend on Lang.
Details of changes since 3.20.0 are in the release notes:
https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/RELEASE-NOTES.txt
https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/site/changes.html
Site:
https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/site/index.html
(Note some *relative* links are broken and the 3.21.0 directories
are not yet created - these will be OK once the site is deployed.)
JApiCmp Report (compared to 3.20.0):
https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/site/japicmp.html
RAT Report:
https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/site/rat-report.html
KEYS:
https://downloads.apache.org/commons/KEYS
Please review the release candidate and vote.
This vote will close no sooner than 72 hours from now.
[ ] +1 Release these artifacts
[ ] +0 OK, but...
[ ] -0 OK, but really should fix...
[ ] -1 I oppose this release because...
Thank you,
Gary Gregory,
Release Manager (using key 530AA5F25C25011F)
The following is intended as a helper and refresher for reviewers.
Validating a release candidate
==============================
These guidelines are NOT complete.
Requirements: Git, Java, and Maven.
You can validate a release from a release candidate (RC) tag as follows.
1a) Download and decompress the source archive from:
https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/source
1b) Check out the RC tag from git (optional)
This is optional, as a reviewer must at least check source distributions.
git clone https://gitbox.apache.org/repos/asf/commons-lang.git
--branch commons-lang-3.21.0-RC1 commons-lang-3.21.0-RC1
cd commons-lang-3.21.0-RC1
2) Checking the build
All components should include a default Maven goal, such that you can
run 'mvn' from the command line by itself.
2) Check Apache licenses
This step is not required if the site includes a RAT report page,
which you then must check.
This check should be included in the default Maven build, but you can
check it with:
mvn apache-rat:check
3) Check binary compatibility
This step is not required if the site includes a JApiCmp report page,
which you then must check.
This check should be included in the default Maven build, but you can
check it with:
mvn verify -DskipTests -P japicmp japicmp:cmp
4) Build the package
This check should be included in the default Maven build, but you can
check it with:
mvn -V clean package
You can record the Maven and Java version produced by -V in your VOTE reply.
To gather OS information from a command line:
Windows: ver
Linux: uname -a
4b) Check reproducibility
To check that a build is reproducible, run:
mvn clean verify artifact:compare -DskipTests
-Dreference.repo=https://repository.apache.org/content/repositories/staging/
'-Dbuildinfo.ignore=*/*.spdx.json'
Note that this excludes SPDX files from the check.
5) Build the site for a single module project
Note: Some plugins require the components to be installed instead of packaged.
mvn site
Check the site reports in:
- Windows: target\site\index.html
- Linux: target/site/index.html
-the end-
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
For additional commands, e-mail: dev-help@commons.apache.org
[CANCEL][VOTE] Release Apache Commons Lang 3.21.0 based on RC1
Posted by Gary Gregory <ga...@gmail.com>.
This RC is canceled. I will roll RC2 later today or over the weekend.
Gary
On Fri, Sep 25, 2026, 14:53 Piotr P. Karwasz <pi...@mailing.copernik.eu>
wrote:
> Hello Gary,
>
> On 22.09.2026 14:37, Gary Gregory wrote:
> > We have fixed a few bugs and added enhancements since the release of
> > Apache Commons Lang 3.20.0, so I would like to release Apache Commons
> > Lang 3.21.0.
> >
> > [...]
> >
> > Please review the release candidate and vote.
> > This vote will close no sooner than 72 hours from now.
> >
> > [ ] +1 Release these artifacts
> > [ ] +0 OK, but...
> > [ ] -0 OK, but really should fix...
> > [ ] -1 I oppose this release because...
>
> -1, the release contains a blocker.
>
> All tests pass and the build is reproducible, but Astra pointed out that
> `mockito-inline` leaks into the `compile` scope:
>
> --- dependency:3.11.0:tree (default-cli) @ commons-lang3 ---
> org.apache.commons:commons-lang3:jar:3.21.0
> +- org.junit.jupiter:junit-jupiter:jar:5.14.4:test
> | +- org.junit.jupiter:junit-jupiter-api:jar:5.14.4:test
> | | +- org.opentest4j:opentest4j:jar:1.3.0:test
> | | +- org.junit.platform:junit-platform-commons:jar:1.14.4:test
> | | \- org.apiguardian:apiguardian-api:jar:1.1.2:test
> | +- org.junit.jupiter:junit-jupiter-params:jar:5.14.4:test
> | \- org.junit.jupiter:junit-jupiter-engine:jar:5.14.4:test
> | \- org.junit.platform:junit-platform-engine:jar:1.14.4:test
> +- org.junit-pioneer:junit-pioneer:jar:1.9.1:test
> | \- org.junit.platform:junit-platform-launcher:jar:1.14.4:test
> +- org.easymock:easymock:jar:5.6.0:test
> | +- net.bytebuddy:byte-buddy:jar:1.17.5:compile
> | +- org.ow2.asm:asm:jar:9.8:test
> | \- org.objenesis:objenesis:jar:3.4:runtime
> +- org.mockito:mockito-inline:jar:4.11.0:compile
> | \- org.mockito:mockito-core:jar:4.11.0:compile
> | \- net.bytebuddy:byte-buddy-agent:jar:1.12.19:compile
> +- org.apache.commons:commons-text:jar:1.15.0:test
> | \- org.apache.commons:commons-lang3:jar:3.20.0:test
> +- org.openjdk.jmh:jmh-core:jar:1.37:test
> | +- net.sf.jopt-simple:jopt-simple:jar:5.0.4:test
> | \- org.apache.commons:commons-math3:jar:3.6.1:test
> \- org.openjdk.jmh:jmh-generator-annprocess:jar:1.37:test
>
> Piotr
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
> For additional commands, e-mail: dev-help@commons.apache.org
>
>
Re: [VOTE] Release Apache Commons Lang 3.21.0 based on RC1
Posted by "Piotr P. Karwasz" <pi...@mailing.copernik.eu>.
Hello Gary,
On 22.09.2026 14:37, Gary Gregory wrote:
> We have fixed a few bugs and added enhancements since the release of
> Apache Commons Lang 3.20.0, so I would like to release Apache Commons
> Lang 3.21.0.
>
> [...]
>
> Please review the release candidate and vote.
> This vote will close no sooner than 72 hours from now.
>
> [ ] +1 Release these artifacts
> [ ] +0 OK, but...
> [ ] -0 OK, but really should fix...
> [ ] -1 I oppose this release because...
-1, the release contains a blocker.
All tests pass and the build is reproducible, but Astra pointed out that
`mockito-inline` leaks into the `compile` scope:
--- dependency:3.11.0:tree (default-cli) @ commons-lang3 ---
org.apache.commons:commons-lang3:jar:3.21.0
+- org.junit.jupiter:junit-jupiter:jar:5.14.4:test
| +- org.junit.jupiter:junit-jupiter-api:jar:5.14.4:test
| | +- org.opentest4j:opentest4j:jar:1.3.0:test
| | +- org.junit.platform:junit-platform-commons:jar:1.14.4:test
| | \- org.apiguardian:apiguardian-api:jar:1.1.2:test
| +- org.junit.jupiter:junit-jupiter-params:jar:5.14.4:test
| \- org.junit.jupiter:junit-jupiter-engine:jar:5.14.4:test
| \- org.junit.platform:junit-platform-engine:jar:1.14.4:test
+- org.junit-pioneer:junit-pioneer:jar:1.9.1:test
| \- org.junit.platform:junit-platform-launcher:jar:1.14.4:test
+- org.easymock:easymock:jar:5.6.0:test
| +- net.bytebuddy:byte-buddy:jar:1.17.5:compile
| +- org.ow2.asm:asm:jar:9.8:test
| \- org.objenesis:objenesis:jar:3.4:runtime
+- org.mockito:mockito-inline:jar:4.11.0:compile
| \- org.mockito:mockito-core:jar:4.11.0:compile
| \- net.bytebuddy:byte-buddy-agent:jar:1.12.19:compile
+- org.apache.commons:commons-text:jar:1.15.0:test
| \- org.apache.commons:commons-lang3:jar:3.20.0:test
+- org.openjdk.jmh:jmh-core:jar:1.37:test
| +- net.sf.jopt-simple:jopt-simple:jar:5.0.4:test
| \- org.apache.commons:commons-math3:jar:3.6.1:test
\- org.openjdk.jmh:jmh-generator-annprocess:jar:1.37:test
Piotr
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
For additional commands, e-mail: dev-help@commons.apache.org
Re: [VOTE] Release Apache Commons Lang 3.21.0 based on RC1
Posted by Rob Tompkins <ch...@gmail.com>.
doh….I the validations here using this email subbing in 1966 and RC2 responded to the incorrect thread. One moment.
-Rob
> On Sep 28, 2026, at 6:01 PM, Rob Tompkins <ch...@gmail.com> wrote:
>
> Signatures all look good, build looks good on java: 25, 21, 17, and 11. Site and it’s reports look good. There are a considerable number of fixes, but admittedly it has been almost a year so that make sense. RELEASE-NOTES.txt look reasonable and good. I think it generally looks good just has a lot of changes.
>
> +1, and thank you Gary for the release and all that helped.
>
> Cheers,
> -Rob
>
>> On Sep 22, 2026, at 8:37 AM, Gary Gregory <ga...@gmail.com> wrote:
>>
>> We have fixed a few bugs and added enhancements since the release of
>> Apache Commons Lang 3.20.0, so I would like to release Apache Commons
>> Lang 3.21.0.
>>
>> Apache Commons Lang 3.21.0 RC1 is available for review here:
>> https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1
>> (svn revision 87792)
>>
>> The Git tag commons-lang-3.21.0-RC1 commit for this RC is
>> e9e546b0c442b55418fce822737f6f9a0dd292f1, which you can browse here:
>> https://gitbox.apache.org/repos/asf?p=commons-lang.git;a=commit;h=e9e546b0c442b55418fce822737f6f9a0dd292f1
>> You may checkout this tag using:
>> git clone https://gitbox.apache.org/repos/asf/commons-lang.git
>> --branch commons-lang-3.21.0-RC1 commons-lang-3.21.0-RC1
>>
>> Maven artifacts are here:
>> https://repository.apache.org/content/repositories/orgapachecommons-1965/org/apache/commons/commons-lang3/3.21.0/
>>
>> These are the artifacts and their hashes:
>>
>> #Release SHA-512s
>> #Tue Sep 22 12:22:44 UTC 2026
>> commons-lang3-3.21.0-bin.tar.gz=6a081b8e73c818708cafc33a3cb85b316a70315ae71219e2a6f870043934cfd16686f66c740cb10d671f4eaa6277bd1bb16dc893d495ca684c0642faf931f3c3
>> commons-lang3-3.21.0-bin.zip=43ef924d857a2f3991235ddd84a251e4bbdb1245d0b926625794161e71dcffbbc5844c1e9c23e7da4eed9da24c9d1e032a7f79620ab70bc9d1bbb2b598fe34f9
>> commons-lang3-3.21.0-bom.json=ee343340e34e6493f0f18f5cd5a3f5b1030231613afc4b781b90f2e084b448114cd7fe5915b4bf8b0ece5ba477ddc4b085cd440389ee01ee95188a237415616c
>> commons-lang3-3.21.0-bom.xml=3665535f645ee227012b6a3d594e16d1e643d04357cb73fce70472e11b790b32ce75835d94dde9427c8c227092953bbd5e9aac722363884febe6757ddff1d875
>> commons-lang3-3.21.0-javadoc.jar=3db2e407b39c9557159f5293b06181724db324090c02e1499895fad8c9bd092ff91ad4d9ef52c79519809c9ca08ed5bd4fac72f2c3e53681b21c3ce871ebad98
>> commons-lang3-3.21.0-sources.jar=366230321cb2aeff70ef84c0dd301ce7c7ffaa0e56c69a7c385475779467a4771509337767082006e2e2a0a8c19a353b7a16a5e935bd780a8c789058aceed8db
>> commons-lang3-3.21.0-src.tar.gz=cbc0fad7c211da65bdc65ff6ca4ec10eb357be16c6d0c403bd97df5ec91ff52eb6f53ce02d6561ddccf01fffdd1c694ad2b420e208b273db502c4305512aefee
>> commons-lang3-3.21.0-src.zip=43330d0c34114b7b2c8e1aa65149f9dcc4c4b7fcd763eb5d616853a59f7f5c7bd9ce6750f67374c401e9ebcb714e9125bfb8352eca6ec90ca114689ff0ea7dec
>> commons-lang3-3.21.0-test-sources.jar=2a7049d5866efd152cd5c2b3ccb347c123eb831a0f2c85b75ad570b1862cd1794dc0947aafb49d75e38616f06d6e7934ac5db90c6d6c3fe2fc588aeb9f44bb22
>> commons-lang3-3.21.0-tests.jar=c458be473d3f968c388adef0474fb102fc7603cb4a9468a58cf6258aa69641fdd3b53158c96678d7e54821efde5d482c128d10a4432727fde839cf2809b0b55e
>> org.apache.commons_commons-lang3-3.21.0.spdx.json=e7e78f7d2628b77c125bb52420e8103883fd158294d95afe880337728b1f35476ece66f4050da0cdcaae362ff3fcd065995b36ecc9472347a29ffceea2c56306
>>
>>
>> I have tested this with 'mvn' and 'mvn clean install site' using:
>>
>> openjdk version "25.0.4.1" 2026-08-18
>> OpenJDK Runtime Environment Homebrew (build 25.0.4.1)
>> OpenJDK 64-Bit Server VM Homebrew (build 25.0.4.1, mixed mode, sharing)
>>
>> Apache Maven 3.9.16 (2bdd9fddda4b155ebf8000e807eb73fd829a51d5)
>> Maven home: /opt/homebrew/Cellar/maven/3.9.16/libexec
>> Java version: 25.0.4.1, vendor: Homebrew, runtime:
>> /opt/homebrew/Cellar/openjdk@25/25.0.4.1/libexec/openjdk.jdk/Contents/Home
>> Default locale: en_US, platform encoding: UTF-8
>> OS name: "mac os x", version: "26.7", arch: "aarch64", family: "mac"
>>
>> Darwin Garys-MacBook-Pro.local 25.6.0 Darwin Kernel Version 25.6.0:
>> Tue Aug 18 17:48:46 PDT 2026;
>> root:xnu-12377.161.15.700.19~2/RELEASE_ARM64_T6041 arm64
>>
>> Docker version 29.8.0, build 88096ef
>>
>> I also tested a snapshot build with all Commons components that depend on Lang.
>>
>> Details of changes since 3.20.0 are in the release notes:
>> https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/RELEASE-NOTES.txt
>> https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/site/changes.html
>>
>> Site:
>> https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/site/index.html
>> (Note some *relative* links are broken and the 3.21.0 directories
>> are not yet created - these will be OK once the site is deployed.)
>>
>> JApiCmp Report (compared to 3.20.0):
>> https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/site/japicmp.html
>>
>> RAT Report:
>> https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/site/rat-report.html
>>
>> KEYS:
>> https://downloads.apache.org/commons/KEYS
>>
>> Please review the release candidate and vote.
>> This vote will close no sooner than 72 hours from now.
>>
>> [ ] +1 Release these artifacts
>> [ ] +0 OK, but...
>> [ ] -0 OK, but really should fix...
>> [ ] -1 I oppose this release because...
>>
>> Thank you,
>>
>> Gary Gregory,
>> Release Manager (using key 530AA5F25C25011F)
>>
>> The following is intended as a helper and refresher for reviewers.
>>
>> Validating a release candidate
>> ==============================
>>
>> These guidelines are NOT complete.
>>
>> Requirements: Git, Java, and Maven.
>>
>> You can validate a release from a release candidate (RC) tag as follows.
>>
>> 1a) Download and decompress the source archive from:
>>
>> https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/source
>>
>> 1b) Check out the RC tag from git (optional)
>>
>> This is optional, as a reviewer must at least check source distributions.
>>
>> git clone https://gitbox.apache.org/repos/asf/commons-lang.git
>> --branch commons-lang-3.21.0-RC1 commons-lang-3.21.0-RC1
>> cd commons-lang-3.21.0-RC1
>>
>> 2) Checking the build
>>
>> All components should include a default Maven goal, such that you can
>> run 'mvn' from the command line by itself.
>>
>> 2) Check Apache licenses
>>
>> This step is not required if the site includes a RAT report page,
>> which you then must check.
>> This check should be included in the default Maven build, but you can
>> check it with:
>>
>> mvn apache-rat:check
>>
>> 3) Check binary compatibility
>>
>> This step is not required if the site includes a JApiCmp report page,
>> which you then must check.
>> This check should be included in the default Maven build, but you can
>> check it with:
>>
>> mvn verify -DskipTests -P japicmp japicmp:cmp
>>
>> 4) Build the package
>>
>> This check should be included in the default Maven build, but you can
>> check it with:
>>
>> mvn -V clean package
>>
>> You can record the Maven and Java version produced by -V in your VOTE reply.
>> To gather OS information from a command line:
>> Windows: ver
>> Linux: uname -a
>>
>> 4b) Check reproducibility
>>
>> To check that a build is reproducible, run:
>>
>> mvn clean verify artifact:compare -DskipTests
>> -Dreference.repo=https://repository.apache.org/content/repositories/staging/
>> '-Dbuildinfo.ignore=*/*.spdx.json'
>>
>> Note that this excludes SPDX files from the check.
>>
>> 5) Build the site for a single module project
>>
>> Note: Some plugins require the components to be installed instead of packaged.
>>
>> mvn site
>> Check the site reports in:
>> - Windows: target\site\index.html
>> - Linux: target/site/index.html
>>
>> -the end-
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
>> For additional commands, e-mail: dev-help@commons.apache.org
>>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
For additional commands, e-mail: dev-help@commons.apache.org
Re: [VOTE] Release Apache Commons Lang 3.21.0 based on RC1
Posted by Gary Gregory <ga...@gmail.com>.
Hi Rob,
RC1 was canceled so I imagine you actually tested RC2. Would you please
reply to the RC2 vote thread if that's indeed the case?
Thank you!
Gary
On Mon, Sep 28, 2026, 18:02 Rob Tompkins <ch...@gmail.com> wrote:
> Signatures all look good, build looks good on java: 25, 21, 17, and 11.
> Site and it’s reports look good. There are a considerable number of fixes,
> but admittedly it has been almost a year so that make sense.
> RELEASE-NOTES.txt look reasonable and good. I think it generally looks good
> just has a lot of changes.
>
> +1, and thank you Gary for the release and all that helped.
>
> Cheers,
> -Rob
>
> > On Sep 22, 2026, at 8:37 AM, Gary Gregory <ga...@gmail.com>
> wrote:
> >
> > We have fixed a few bugs and added enhancements since the release of
> > Apache Commons Lang 3.20.0, so I would like to release Apache Commons
> > Lang 3.21.0.
> >
> > Apache Commons Lang 3.21.0 RC1 is available for review here:
> > https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1
> > (svn revision 87792)
> >
> > The Git tag commons-lang-3.21.0-RC1 commit for this RC is
> > e9e546b0c442b55418fce822737f6f9a0dd292f1, which you can browse here:
> >
> https://gitbox.apache.org/repos/asf?p=commons-lang.git;a=commit;h=e9e546b0c442b55418fce822737f6f9a0dd292f1
> > You may checkout this tag using:
> > git clone https://gitbox.apache.org/repos/asf/commons-lang.git
> > --branch commons-lang-3.21.0-RC1 commons-lang-3.21.0-RC1
> >
> > Maven artifacts are here:
> >
> https://repository.apache.org/content/repositories/orgapachecommons-1965/org/apache/commons/commons-lang3/3.21.0/
> >
> > These are the artifacts and their hashes:
> >
> > #Release SHA-512s
> > #Tue Sep 22 12:22:44 UTC 2026
> >
> commons-lang3-3.21.0-bin.tar.gz=6a081b8e73c818708cafc33a3cb85b316a70315ae71219e2a6f870043934cfd16686f66c740cb10d671f4eaa6277bd1bb16dc893d495ca684c0642faf931f3c3
> >
> commons-lang3-3.21.0-bin.zip=43ef924d857a2f3991235ddd84a251e4bbdb1245d0b926625794161e71dcffbbc5844c1e9c23e7da4eed9da24c9d1e032a7f79620ab70bc9d1bbb2b598fe34f9
> >
> commons-lang3-3.21.0-bom.json=ee343340e34e6493f0f18f5cd5a3f5b1030231613afc4b781b90f2e084b448114cd7fe5915b4bf8b0ece5ba477ddc4b085cd440389ee01ee95188a237415616c
> >
> commons-lang3-3.21.0-bom.xml=3665535f645ee227012b6a3d594e16d1e643d04357cb73fce70472e11b790b32ce75835d94dde9427c8c227092953bbd5e9aac722363884febe6757ddff1d875
> >
> commons-lang3-3.21.0-javadoc.jar=3db2e407b39c9557159f5293b06181724db324090c02e1499895fad8c9bd092ff91ad4d9ef52c79519809c9ca08ed5bd4fac72f2c3e53681b21c3ce871ebad98
> >
> commons-lang3-3.21.0-sources.jar=366230321cb2aeff70ef84c0dd301ce7c7ffaa0e56c69a7c385475779467a4771509337767082006e2e2a0a8c19a353b7a16a5e935bd780a8c789058aceed8db
> >
> commons-lang3-3.21.0-src.tar.gz=cbc0fad7c211da65bdc65ff6ca4ec10eb357be16c6d0c403bd97df5ec91ff52eb6f53ce02d6561ddccf01fffdd1c694ad2b420e208b273db502c4305512aefee
> >
> commons-lang3-3.21.0-src.zip=43330d0c34114b7b2c8e1aa65149f9dcc4c4b7fcd763eb5d616853a59f7f5c7bd9ce6750f67374c401e9ebcb714e9125bfb8352eca6ec90ca114689ff0ea7dec
> >
> commons-lang3-3.21.0-test-sources.jar=2a7049d5866efd152cd5c2b3ccb347c123eb831a0f2c85b75ad570b1862cd1794dc0947aafb49d75e38616f06d6e7934ac5db90c6d6c3fe2fc588aeb9f44bb22
> >
> commons-lang3-3.21.0-tests.jar=c458be473d3f968c388adef0474fb102fc7603cb4a9468a58cf6258aa69641fdd3b53158c96678d7e54821efde5d482c128d10a4432727fde839cf2809b0b55e
> >
> org.apache.commons_commons-lang3-3.21.0.spdx.json=e7e78f7d2628b77c125bb52420e8103883fd158294d95afe880337728b1f35476ece66f4050da0cdcaae362ff3fcd065995b36ecc9472347a29ffceea2c56306
> >
> >
> > I have tested this with 'mvn' and 'mvn clean install site' using:
> >
> > openjdk version "25.0.4.1" 2026-08-18
> > OpenJDK Runtime Environment Homebrew (build 25.0.4.1)
> > OpenJDK 64-Bit Server VM Homebrew (build 25.0.4.1, mixed mode, sharing)
> >
> > Apache Maven 3.9.16 (2bdd9fddda4b155ebf8000e807eb73fd829a51d5)
> > Maven home: /opt/homebrew/Cellar/maven/3.9.16/libexec
> > Java version: 25.0.4.1, vendor: Homebrew, runtime:
> > /opt/homebrew/Cellar/openjdk@25/
> 25.0.4.1/libexec/openjdk.jdk/Contents/Home
> > Default locale: en_US, platform encoding: UTF-8
> > OS name: "mac os x", version: "26.7", arch: "aarch64", family: "mac"
> >
> > Darwin Garys-MacBook-Pro.local 25.6.0 Darwin Kernel Version 25.6.0:
> > Tue Aug 18 17:48:46 PDT 2026;
> > root:xnu-12377.161.15.700.19~2/RELEASE_ARM64_T6041 arm64
> >
> > Docker version 29.8.0, build 88096ef
> >
> > I also tested a snapshot build with all Commons components that depend
> on Lang.
> >
> > Details of changes since 3.20.0 are in the release notes:
> >
> https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/RELEASE-NOTES.txt
> >
> https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/site/changes.html
> >
> > Site:
> >
> https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/site/index.html
> > (Note some *relative* links are broken and the 3.21.0 directories
> > are not yet created - these will be OK once the site is deployed.)
> >
> > JApiCmp Report (compared to 3.20.0):
> >
> https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/site/japicmp.html
> >
> > RAT Report:
> >
> https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/site/rat-report.html
> >
> > KEYS:
> > https://downloads.apache.org/commons/KEYS
> >
> > Please review the release candidate and vote.
> > This vote will close no sooner than 72 hours from now.
> >
> > [ ] +1 Release these artifacts
> > [ ] +0 OK, but...
> > [ ] -0 OK, but really should fix...
> > [ ] -1 I oppose this release because...
> >
> > Thank you,
> >
> > Gary Gregory,
> > Release Manager (using key 530AA5F25C25011F)
> >
> > The following is intended as a helper and refresher for reviewers.
> >
> > Validating a release candidate
> > ==============================
> >
> > These guidelines are NOT complete.
> >
> > Requirements: Git, Java, and Maven.
> >
> > You can validate a release from a release candidate (RC) tag as follows.
> >
> > 1a) Download and decompress the source archive from:
> >
> > https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/source
> >
> > 1b) Check out the RC tag from git (optional)
> >
> > This is optional, as a reviewer must at least check source
> distributions.
> >
> > git clone https://gitbox.apache.org/repos/asf/commons-lang.git
> > --branch commons-lang-3.21.0-RC1 commons-lang-3.21.0-RC1
> > cd commons-lang-3.21.0-RC1
> >
> > 2) Checking the build
> >
> > All components should include a default Maven goal, such that you can
> > run 'mvn' from the command line by itself.
> >
> > 2) Check Apache licenses
> >
> > This step is not required if the site includes a RAT report page,
> > which you then must check.
> > This check should be included in the default Maven build, but you can
> > check it with:
> >
> > mvn apache-rat:check
> >
> > 3) Check binary compatibility
> >
> > This step is not required if the site includes a JApiCmp report page,
> > which you then must check.
> > This check should be included in the default Maven build, but you can
> > check it with:
> >
> > mvn verify -DskipTests -P japicmp japicmp:cmp
> >
> > 4) Build the package
> >
> > This check should be included in the default Maven build, but you can
> > check it with:
> >
> > mvn -V clean package
> >
> > You can record the Maven and Java version produced by -V in your VOTE
> reply.
> > To gather OS information from a command line:
> > Windows: ver
> > Linux: uname -a
> >
> > 4b) Check reproducibility
> >
> > To check that a build is reproducible, run:
> >
> > mvn clean verify artifact:compare -DskipTests
> > -Dreference.repo=
> https://repository.apache.org/content/repositories/staging/
> > '-Dbuildinfo.ignore=*/*.spdx.json'
> >
> > Note that this excludes SPDX files from the check.
> >
> > 5) Build the site for a single module project
> >
> > Note: Some plugins require the components to be installed instead of
> packaged.
> >
> > mvn site
> > Check the site reports in:
> > - Windows: target\site\index.html
> > - Linux: target/site/index.html
> >
> > -the end-
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
> > For additional commands, e-mail: dev-help@commons.apache.org
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
> For additional commands, e-mail: dev-help@commons.apache.org
>
>
Re: [VOTE] Release Apache Commons Lang 3.21.0 based on RC1
Posted by Rob Tompkins <ch...@gmail.com>.
Signatures all look good, build looks good on java: 25, 21, 17, and 11. Site and it’s reports look good. There are a considerable number of fixes, but admittedly it has been almost a year so that make sense. RELEASE-NOTES.txt look reasonable and good. I think it generally looks good just has a lot of changes.
+1, and thank you Gary for the release and all that helped.
Cheers,
-Rob
> On Sep 22, 2026, at 8:37 AM, Gary Gregory <ga...@gmail.com> wrote:
>
> We have fixed a few bugs and added enhancements since the release of
> Apache Commons Lang 3.20.0, so I would like to release Apache Commons
> Lang 3.21.0.
>
> Apache Commons Lang 3.21.0 RC1 is available for review here:
> https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1
> (svn revision 87792)
>
> The Git tag commons-lang-3.21.0-RC1 commit for this RC is
> e9e546b0c442b55418fce822737f6f9a0dd292f1, which you can browse here:
> https://gitbox.apache.org/repos/asf?p=commons-lang.git;a=commit;h=e9e546b0c442b55418fce822737f6f9a0dd292f1
> You may checkout this tag using:
> git clone https://gitbox.apache.org/repos/asf/commons-lang.git
> --branch commons-lang-3.21.0-RC1 commons-lang-3.21.0-RC1
>
> Maven artifacts are here:
> https://repository.apache.org/content/repositories/orgapachecommons-1965/org/apache/commons/commons-lang3/3.21.0/
>
> These are the artifacts and their hashes:
>
> #Release SHA-512s
> #Tue Sep 22 12:22:44 UTC 2026
> commons-lang3-3.21.0-bin.tar.gz=6a081b8e73c818708cafc33a3cb85b316a70315ae71219e2a6f870043934cfd16686f66c740cb10d671f4eaa6277bd1bb16dc893d495ca684c0642faf931f3c3
> commons-lang3-3.21.0-bin.zip=43ef924d857a2f3991235ddd84a251e4bbdb1245d0b926625794161e71dcffbbc5844c1e9c23e7da4eed9da24c9d1e032a7f79620ab70bc9d1bbb2b598fe34f9
> commons-lang3-3.21.0-bom.json=ee343340e34e6493f0f18f5cd5a3f5b1030231613afc4b781b90f2e084b448114cd7fe5915b4bf8b0ece5ba477ddc4b085cd440389ee01ee95188a237415616c
> commons-lang3-3.21.0-bom.xml=3665535f645ee227012b6a3d594e16d1e643d04357cb73fce70472e11b790b32ce75835d94dde9427c8c227092953bbd5e9aac722363884febe6757ddff1d875
> commons-lang3-3.21.0-javadoc.jar=3db2e407b39c9557159f5293b06181724db324090c02e1499895fad8c9bd092ff91ad4d9ef52c79519809c9ca08ed5bd4fac72f2c3e53681b21c3ce871ebad98
> commons-lang3-3.21.0-sources.jar=366230321cb2aeff70ef84c0dd301ce7c7ffaa0e56c69a7c385475779467a4771509337767082006e2e2a0a8c19a353b7a16a5e935bd780a8c789058aceed8db
> commons-lang3-3.21.0-src.tar.gz=cbc0fad7c211da65bdc65ff6ca4ec10eb357be16c6d0c403bd97df5ec91ff52eb6f53ce02d6561ddccf01fffdd1c694ad2b420e208b273db502c4305512aefee
> commons-lang3-3.21.0-src.zip=43330d0c34114b7b2c8e1aa65149f9dcc4c4b7fcd763eb5d616853a59f7f5c7bd9ce6750f67374c401e9ebcb714e9125bfb8352eca6ec90ca114689ff0ea7dec
> commons-lang3-3.21.0-test-sources.jar=2a7049d5866efd152cd5c2b3ccb347c123eb831a0f2c85b75ad570b1862cd1794dc0947aafb49d75e38616f06d6e7934ac5db90c6d6c3fe2fc588aeb9f44bb22
> commons-lang3-3.21.0-tests.jar=c458be473d3f968c388adef0474fb102fc7603cb4a9468a58cf6258aa69641fdd3b53158c96678d7e54821efde5d482c128d10a4432727fde839cf2809b0b55e
> org.apache.commons_commons-lang3-3.21.0.spdx.json=e7e78f7d2628b77c125bb52420e8103883fd158294d95afe880337728b1f35476ece66f4050da0cdcaae362ff3fcd065995b36ecc9472347a29ffceea2c56306
>
>
> I have tested this with 'mvn' and 'mvn clean install site' using:
>
> openjdk version "25.0.4.1" 2026-08-18
> OpenJDK Runtime Environment Homebrew (build 25.0.4.1)
> OpenJDK 64-Bit Server VM Homebrew (build 25.0.4.1, mixed mode, sharing)
>
> Apache Maven 3.9.16 (2bdd9fddda4b155ebf8000e807eb73fd829a51d5)
> Maven home: /opt/homebrew/Cellar/maven/3.9.16/libexec
> Java version: 25.0.4.1, vendor: Homebrew, runtime:
> /opt/homebrew/Cellar/openjdk@25/25.0.4.1/libexec/openjdk.jdk/Contents/Home
> Default locale: en_US, platform encoding: UTF-8
> OS name: "mac os x", version: "26.7", arch: "aarch64", family: "mac"
>
> Darwin Garys-MacBook-Pro.local 25.6.0 Darwin Kernel Version 25.6.0:
> Tue Aug 18 17:48:46 PDT 2026;
> root:xnu-12377.161.15.700.19~2/RELEASE_ARM64_T6041 arm64
>
> Docker version 29.8.0, build 88096ef
>
> I also tested a snapshot build with all Commons components that depend on Lang.
>
> Details of changes since 3.20.0 are in the release notes:
> https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/RELEASE-NOTES.txt
> https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/site/changes.html
>
> Site:
> https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/site/index.html
> (Note some *relative* links are broken and the 3.21.0 directories
> are not yet created - these will be OK once the site is deployed.)
>
> JApiCmp Report (compared to 3.20.0):
> https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/site/japicmp.html
>
> RAT Report:
> https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/site/rat-report.html
>
> KEYS:
> https://downloads.apache.org/commons/KEYS
>
> Please review the release candidate and vote.
> This vote will close no sooner than 72 hours from now.
>
> [ ] +1 Release these artifacts
> [ ] +0 OK, but...
> [ ] -0 OK, but really should fix...
> [ ] -1 I oppose this release because...
>
> Thank you,
>
> Gary Gregory,
> Release Manager (using key 530AA5F25C25011F)
>
> The following is intended as a helper and refresher for reviewers.
>
> Validating a release candidate
> ==============================
>
> These guidelines are NOT complete.
>
> Requirements: Git, Java, and Maven.
>
> You can validate a release from a release candidate (RC) tag as follows.
>
> 1a) Download and decompress the source archive from:
>
> https://dist.apache.org/repos/dist/dev/commons/lang/3.21.0-RC1/source
>
> 1b) Check out the RC tag from git (optional)
>
> This is optional, as a reviewer must at least check source distributions.
>
> git clone https://gitbox.apache.org/repos/asf/commons-lang.git
> --branch commons-lang-3.21.0-RC1 commons-lang-3.21.0-RC1
> cd commons-lang-3.21.0-RC1
>
> 2) Checking the build
>
> All components should include a default Maven goal, such that you can
> run 'mvn' from the command line by itself.
>
> 2) Check Apache licenses
>
> This step is not required if the site includes a RAT report page,
> which you then must check.
> This check should be included in the default Maven build, but you can
> check it with:
>
> mvn apache-rat:check
>
> 3) Check binary compatibility
>
> This step is not required if the site includes a JApiCmp report page,
> which you then must check.
> This check should be included in the default Maven build, but you can
> check it with:
>
> mvn verify -DskipTests -P japicmp japicmp:cmp
>
> 4) Build the package
>
> This check should be included in the default Maven build, but you can
> check it with:
>
> mvn -V clean package
>
> You can record the Maven and Java version produced by -V in your VOTE reply.
> To gather OS information from a command line:
> Windows: ver
> Linux: uname -a
>
> 4b) Check reproducibility
>
> To check that a build is reproducible, run:
>
> mvn clean verify artifact:compare -DskipTests
> -Dreference.repo=https://repository.apache.org/content/repositories/staging/
> '-Dbuildinfo.ignore=*/*.spdx.json'
>
> Note that this excludes SPDX files from the check.
>
> 5) Build the site for a single module project
>
> Note: Some plugins require the components to be installed instead of packaged.
>
> mvn site
> Check the site reports in:
> - Windows: target\site\index.html
> - Linux: target/site/index.html
>
> -the end-
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
> For additional commands, e-mail: dev-help@commons.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
For additional commands, e-mail: dev-help@commons.apache.org