From 3a97cb92da65b0297c96a11e0cface8e51e2b0c2 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Sun, 30 Nov 2025 15:50:36 -0500
Subject: [PATCH 018/163] Fix broken Introduction links on the website #417
---
src/changes/changes.xml | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 1c3c3fc86..1f657e1c9 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -24,6 +24,7 @@
+ Fix broken Introduction links on the website #417.Bump org.apache.commons:commons-parent from 91 to 93 #414, #416.
From f009e7b6f4d0c4024480a896b1d325f9332d3658 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Mon, 1 Dec 2025 09:56:00 -0500
Subject: [PATCH 019/163] Bump github/codeql-action from 4.31.5 to 4.31.6
---
.github/workflows/codeql-analysis.yml | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index c03eba96e..a9bd0c697 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -57,7 +57,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@fdbfb4d2750291e159f0156def62b853c2798ca2 # 4.31.5
+ uses: github/codeql-action/init@fe4161a26a8629af62121b670040955b330f9af2 # v4.31.6
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@fdbfb4d2750291e159f0156def62b853c2798ca2 # 4.31.5
+ uses: github/codeql-action/autobuild@fe4161a26a8629af62121b670040955b330f9af2 # v4.31.6
# âšī¸ 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@fdbfb4d2750291e159f0156def62b853c2798ca2 # 4.31.5
+ uses: github/codeql-action/analyze@fe4161a26a8629af62121b670040955b330f9af2 # v4.31.6
From 32c2134142444f2531bb0334154ac794f8bcdf92 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Mon, 1 Dec 2025 16:10:10 -0500
Subject: [PATCH 020/163] Bump github/codeql-action from 4.31.5 to 4.31.6
---
.github/workflows/scorecards-analysis.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index c8c946442..47ebd94a2 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -64,6 +64,6 @@ jobs:
retention-days: 5
- name: "Upload to code-scanning"
- uses: github/codeql-action/upload-sarif@fdbfb4d2750291e159f0156def62b853c2798ca2 # 4.31.5
+ uses: github/codeql-action/upload-sarif@fe4161a26a8629af62121b670040955b330f9af2 # v4.31.6
with:
sarif_file: results.sarif
From c03cec9db934b22eb3dbcb5ce7f4960572215631 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Wed, 3 Dec 2025 06:41:58 -0500
Subject: [PATCH 021/163] Javadoc: Fix spelling
---
src/main/javadoc/overview.html | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/main/javadoc/overview.html b/src/main/javadoc/overview.html
index b1f2cc340..42929e5ca 100644
--- a/src/main/javadoc/overview.html
+++ b/src/main/javadoc/overview.html
@@ -26,7 +26,7 @@
1. Introducing Apache Commons CLI
-
The Apacahe Commons CLI component parses command-line arguments for your application.
+
The Apache Commons CLI component parses command-line arguments for your application.
Commons CLI parses command-line arguments using a descriptor of
valid options (long and short), potentially with arguments.
From 13d7f9c14ac5b1187f12223d78553edb5d908851 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Wed, 3 Dec 2025 10:48:08 -0500
Subject: [PATCH 022/163] Javadoc
---
.../apache/commons/cli/help/AbstractHelpFormatter.java | 8 ++++----
.../org/apache/commons/cli/help/OptionFormatter.java | 10 +++++-----
.../java/org/apache/commons/cli/help/TextStyle.java | 10 +++++-----
3 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/src/main/java/org/apache/commons/cli/help/AbstractHelpFormatter.java b/src/main/java/org/apache/commons/cli/help/AbstractHelpFormatter.java
index 03a7f40ff..767abe38f 100644
--- a/src/main/java/org/apache/commons/cli/help/AbstractHelpFormatter.java
+++ b/src/main/java/org/apache/commons/cli/help/AbstractHelpFormatter.java
@@ -122,7 +122,7 @@ protected String getOptionGroupSeparator() {
* Sets the comparator to use for sorting options. If set to {@code null} no sorting is performed.
*
* @param comparator The comparator to use for sorting options.
- * @return this
+ * @return {@code this} instance.
*/
public B setComparator(final Comparator
From 9b4aceeeb71daa9a6accfa3f0593c869d8216a2a Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Fri, 12 Dec 2025 08:16:43 -0500
Subject: [PATCH 030/163] Bump github/codeql-action from 4.31.7 to 4.31.8
---
.github/workflows/codeql-analysis.yml | 6 +++---
.github/workflows/scorecards-analysis.yml | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index c928d7b1b..8223940b0 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -57,7 +57,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@cf1bb45a277cb3c205638b2cd5c984db1c46a412 # v4.31.7
+ uses: github/codeql-action/init@1b168cd39490f61582a9beae412bb7057a6b2c4e # v4.31.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@cf1bb45a277cb3c205638b2cd5c984db1c46a412 # v4.31.7
+ uses: github/codeql-action/autobuild@1b168cd39490f61582a9beae412bb7057a6b2c4e # v4.31.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@cf1bb45a277cb3c205638b2cd5c984db1c46a412 # v4.31.7
+ uses: github/codeql-action/analyze@1b168cd39490f61582a9beae412bb7057a6b2c4e # v4.31.8
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index 8c678986f..4261c9e21 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -64,6 +64,6 @@ jobs:
retention-days: 5
- name: "Upload to code-scanning"
- uses: github/codeql-action/upload-sarif@cf1bb45a277cb3c205638b2cd5c984db1c46a412 # v4.31.7
+ uses: github/codeql-action/upload-sarif@1b168cd39490f61582a9beae412bb7057a6b2c4e # v4.31.8
with:
sarif_file: results.sarif
From 7f8c35c892e4c2f1d18f648ee7ca7e519baa4da2 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Fri, 12 Dec 2025 14:26:58 -0500
Subject: [PATCH 031/163] Bump actions/cache from 4.3.0 to 5.0.1
---
.github/workflows/codeql-analysis.yml | 2 +-
.github/workflows/maven.yml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index 8223940b0..b1cc918df 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -48,7 +48,7 @@ jobs:
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
persist-credentials: false
- - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
+ - uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml
index 9799caf1c..7fa0c1b87 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven.yml
@@ -37,7 +37,7 @@ jobs:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
persist-credentials: false
- - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
+ - uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
From a6526104cc68f0bddc3014ca6beb084353714bd1 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Sat, 13 Dec 2025 08:59:46 -0500
Subject: [PATCH 032/163] Fix malformed Javadoc comments
---
src/changes/changes.xml | 1 +
.../java/org/apache/commons/cli/help/TextHelpAppendable.java | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 62b24c570..a5309fd0d 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -25,6 +25,7 @@
Fix broken Introduction links on the website #417.
+ Fix malformed Javadoc comments.Bump org.apache.commons:commons-parent from 91 to 93 #414, #416.
diff --git a/src/main/java/org/apache/commons/cli/help/TextHelpAppendable.java b/src/main/java/org/apache/commons/cli/help/TextHelpAppendable.java
index 232041436..f7cbd923f 100644
--- a/src/main/java/org/apache/commons/cli/help/TextHelpAppendable.java
+++ b/src/main/java/org/apache/commons/cli/help/TextHelpAppendable.java
@@ -137,7 +137,7 @@ public TextHelpAppendable(final Appendable output) {
*
The minimum size for a column may not be smaller than the length of the column header
*
The maximum size is set to the maximum of the length of the header or the longest line length.
*
If the total size of the columns is greater than the page wight, adjust the size of VARIABLE columns to attempt reduce the width to the the maximum
- * size.
+ * size.
*
*
* Note: it is possible for the size of the columns to exceed the declared page width. In this case the table will extend beyond the desired page width.
From 8974818287cea23c94d52b0a7f71250b23a0a236 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Wed, 17 Dec 2025 07:50:32 -0500
Subject: [PATCH 033/163] Bump github/codeql-action from 4.31.8 to 4.31.9
---
.github/workflows/codeql-analysis.yml | 6 +++---
.github/workflows/scorecards-analysis.yml | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index b1cc918df..d7e8c4a82 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -57,7 +57,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@1b168cd39490f61582a9beae412bb7057a6b2c4e # v4.31.8
+ uses: github/codeql-action/init@5d4e8d1aca955e8d8589aabd499c5cae939e33c7 # v4.31.9
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@1b168cd39490f61582a9beae412bb7057a6b2c4e # v4.31.8
+ uses: github/codeql-action/autobuild@5d4e8d1aca955e8d8589aabd499c5cae939e33c7 # v4.31.9
# âšī¸ 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@1b168cd39490f61582a9beae412bb7057a6b2c4e # v4.31.8
+ uses: github/codeql-action/analyze@5d4e8d1aca955e8d8589aabd499c5cae939e33c7 # v4.31.9
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index 4261c9e21..6278f3689 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -64,6 +64,6 @@ jobs:
retention-days: 5
- name: "Upload to code-scanning"
- uses: github/codeql-action/upload-sarif@1b168cd39490f61582a9beae412bb7057a6b2c4e # v4.31.8
+ uses: github/codeql-action/upload-sarif@5d4e8d1aca955e8d8589aabd499c5cae939e33c7 # v4.31.9
with:
sarif_file: results.sarif
From f749f826a32bb13832d0b31e400d555fdae3cabd Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Sun, 21 Dec 2025 09:49:06 -0500
Subject: [PATCH 034/163] Add Java 27-ea as an experimental build
---
.github/workflows/maven.yml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml
index 7fa0c1b87..2f5b36516 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven.yml
@@ -32,6 +32,8 @@ jobs:
include:
- java: 26-ea
experimental: true
+ - java: 27-ea
+ experimental: true
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
From e91b9d87efa8946a82d58858940882f012d63d00 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Sun, 21 Dec 2025 09:50:06 -0500
Subject: [PATCH 035/163] Comment out: Add Java 27-ea as an experimental build
---
.github/workflows/maven.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml
index 2f5b36516..51d7d7b96 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven.yml
@@ -32,8 +32,8 @@ jobs:
include:
- java: 26-ea
experimental: true
- - java: 27-ea
- experimental: true
+# - java: 27-ea
+# experimental: true
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
From ab0ff340bf3d5fcfc89fd108e440901445b52dcc Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Fri, 26 Dec 2025 16:14:14 -0500
Subject: [PATCH 036/163] Javadoc: Fix double the
---
src/main/java/org/apache/commons/cli/TypeHandler.java | 2 +-
.../java/org/apache/commons/cli/help/TextHelpAppendable.java | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/main/java/org/apache/commons/cli/TypeHandler.java b/src/main/java/org/apache/commons/cli/TypeHandler.java
index 9795de45b..af9134571 100644
--- a/src/main/java/org/apache/commons/cli/TypeHandler.java
+++ b/src/main/java/org/apache/commons/cli/TypeHandler.java
@@ -267,7 +267,7 @@ public TypeHandler(final Map, Converter, ? extends Throwable>> conver
}
/**
- * Gets the registered converter for the the Class, or {@link Converter#DEFAULT} if absent.
+ * Gets the registered converter for the Class, or {@link Converter#DEFAULT} if absent.
*
* @param The Class parameter type.
* @param clazz The Class to get the Converter for.
diff --git a/src/main/java/org/apache/commons/cli/help/TextHelpAppendable.java b/src/main/java/org/apache/commons/cli/help/TextHelpAppendable.java
index f7cbd923f..3e1e47758 100644
--- a/src/main/java/org/apache/commons/cli/help/TextHelpAppendable.java
+++ b/src/main/java/org/apache/commons/cli/help/TextHelpAppendable.java
@@ -136,7 +136,7 @@ public TextHelpAppendable(final Appendable output) {
*
*
The minimum size for a column may not be smaller than the length of the column header
*
The maximum size is set to the maximum of the length of the header or the longest line length.
- *
If the total size of the columns is greater than the page wight, adjust the size of VARIABLE columns to attempt reduce the width to the the maximum
+ *
If the total size of the columns is greater than the page wight, adjust the size of VARIABLE columns to attempt reduce the width to the maximum
* size.
*
*
From 5c24f496c3cf625fead4d7cf961a05f76dadb4e9 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Mon, 29 Dec 2025 08:51:22 -0500
Subject: [PATCH 037/163] Bump notice file end year from 2025 to 2026
---
NOTICE.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/NOTICE.txt b/NOTICE.txt
index 10eb78eb4..a8fd7fbae 100644
--- a/NOTICE.txt
+++ b/NOTICE.txt
@@ -1,5 +1,5 @@
Apache Commons CLI
-Copyright 2002-2025 The Apache Software Foundation
+Copyright 2002-2026 The Apache Software Foundation
This product includes software developed at
The Apache Software Foundation (https://www.apache.org/).
From c4dddc7f694770a610ad9486ef28fb8a57e792c2 Mon Sep 17 00:00:00 2001
From: Ken Dombeck
Date: Wed, 31 Dec 2025 09:35:51 -0600
Subject: [PATCH 038/163] [CLI-352] Correct HelpFormatter Javadoc (#418)
* [CLI-352] Correct HelpFormatter Javadoc
* [CLI-352] Correct HelpFormatter Javadoc
* Use overloaded builder method
to define option rather than specifiying it separately. This will be more consistent with other documented uses.
---------
Co-authored-by: Ken Dombeck
---
src/main/java/org/apache/commons/cli/HelpFormatter.java | 6 +++---
.../java/org/apache/commons/cli/help/HelpFormatter.java | 8 ++++----
2 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/src/main/java/org/apache/commons/cli/HelpFormatter.java b/src/main/java/org/apache/commons/cli/HelpFormatter.java
index fb9da62e9..febdf4c8f 100644
--- a/src/main/java/org/apache/commons/cli/HelpFormatter.java
+++ b/src/main/java/org/apache/commons/cli/HelpFormatter.java
@@ -44,9 +44,9 @@ Licensed to the Apache Software Foundation (ASF) under one or more
*
*
* Options options = new Options();
- * options.addOption(OptionBuilder.withLongOpt("file").withDescription("The file to be processed").hasArg().withArgName("FILE").isRequired().create('f'));
- * options.addOption(OptionBuilder.withLongOpt("version").withDescription("Print the version of the application").create('v'));
- * options.addOption(OptionBuilder.withLongOpt("help").create('h'));
+ * options.addOption(Option.builder("f").longOpt("file").desc("The file to be processed").hasArg().argName("FILE").required().get());
+ * options.addOption(Option.builder("v").longOpt("version").desc("Print the version of the application").get());
+ * options.addOption(Option.builder("h").longOpt("help").get());
*
* String header = "Do something useful with an input file\n\n";
* String footer = "\nPlease report issues at https://example.com/issues";
diff --git a/src/main/java/org/apache/commons/cli/help/HelpFormatter.java b/src/main/java/org/apache/commons/cli/help/HelpFormatter.java
index c4081ec4b..f0723706a 100644
--- a/src/main/java/org/apache/commons/cli/help/HelpFormatter.java
+++ b/src/main/java/org/apache/commons/cli/help/HelpFormatter.java
@@ -31,14 +31,14 @@ Licensed to the Apache Software Foundation (ASF) under one or more
*
*
* Options options = new Options();
- * options.addOption(OptionBuilder.withLongOpt("file").withDescription("The file to be processed").hasArg().withArgName("FILE").isRequired().create('f'));
- * options.addOption(OptionBuilder.withLongOpt("version").withDescription("Print the version of the application").create('v'));
- * options.addOption(OptionBuilder.withLongOpt("help").create('h'));
+ * options.addOption(Option.builder("f").longOpt("file").desc("The file to be processed").hasArg().argName("FILE").required().get());
+ * options.addOption(Option.builder("v").longOpt("version").desc("Print the version of the application").get());
+ * options.addOption(Option.builder("h").longOpt("help").get());
*
* String header = "Do something useful with an input file";
* String footer = "Please report issues at https://example.com/issues";
*
- * HelpFormatter formatter = new HelpFormatter();
+ * HelpFormatter formatter = HelpFormatter.builder().get();
* formatter.printHelp("myapp", header, options, footer, true);
*
*
From bae3c6d5445a38ca5afb99c90e26e70ec9af1013 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Wed, 31 Dec 2025 10:38:04 -0500
Subject: [PATCH 039/163] [CLI-352] Correct HelpFormatter Javadoc #418
---
src/changes/changes.xml | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index a5309fd0d..a650a8e90 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -26,6 +26,7 @@
Fix broken Introduction links on the website #417.Fix malformed Javadoc comments.
+ Correct HelpFormatter Javadoc #418.Bump org.apache.commons:commons-parent from 91 to 93 #414, #416.
From fd459881e010fadcd3b26e36bafbc90163643ac6 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Wed, 31 Dec 2025 17:39:49 -0500
Subject: [PATCH 040/163] Javadoc: Empty Javadoc line before the 1st tag.
---
src/main/java/org/apache/commons/cli/HelpFormatter.java | 4 ++++
src/main/java/org/apache/commons/cli/Option.java | 1 +
src/main/java/org/apache/commons/cli/OptionGroup.java | 3 +++
src/main/java/org/apache/commons/cli/OptionValidator.java | 3 +++
.../org/apache/commons/cli/help/AbstractHelpFormatter.java | 1 +
5 files changed, 12 insertions(+)
diff --git a/src/main/java/org/apache/commons/cli/HelpFormatter.java b/src/main/java/org/apache/commons/cli/HelpFormatter.java
index febdf4c8f..8873addab 100644
--- a/src/main/java/org/apache/commons/cli/HelpFormatter.java
+++ b/src/main/java/org/apache/commons/cli/HelpFormatter.java
@@ -67,6 +67,7 @@ Licensed to the Apache Software Foundation (ASF) under one or more
*
* Please report issues at https://example.com/issues
* }
+ *
* @deprecated Use {@link org.apache.commons.cli.help.HelpFormatter}.
*/
@Deprecated
@@ -146,6 +147,7 @@ public Builder setShowDeprecated(final Function
+ *
* @param options The collection of {@link Option} instances to create the string representation for.
* @return the string representation of the options as used in the syntax display.
*/
From 83dc2043aa8a9215981ae8ac1428f9d706fa56ea Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Wed, 31 Dec 2025 18:34:09 -0500
Subject: [PATCH 041/163] Javadoc: The @deprecated tag should be last.
---
src/main/java/org/apache/commons/cli/CommandLine.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/main/java/org/apache/commons/cli/CommandLine.java b/src/main/java/org/apache/commons/cli/CommandLine.java
index 477903e7d..d0ca1fc5a 100644
--- a/src/main/java/org/apache/commons/cli/CommandLine.java
+++ b/src/main/java/org/apache/commons/cli/CommandLine.java
@@ -267,9 +267,9 @@ public int getOptionCount(final String optionName) {
/**
* Gets the {@code Object} type of this {@code Option}.
*
- * @deprecated due to System.err message; use {@link #getParsedOptionValue(char)} instead.
* @param optionChar the name of the option.
* @return the type of opt.
+ * @deprecated due to System.err message; use {@link #getParsedOptionValue(char)} instead.
*/
@Deprecated
public Object getOptionObject(final char optionChar) {
From 7424fd35b99892182f413cd4ac41a5bfc3939a0d Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Thu, 1 Jan 2026 05:10:23 -0500
Subject: [PATCH 042/163] Bump actions/checkout from 5.0.0 to 6.0.1 (#419)
Bumps [actions/checkout](https://github.com/actions/checkout) from 5.0.0 to 6.0.1.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v5...8e8c483db84b4bee98b60c0593521ed34d9990e8)
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: 6.0.1
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
.github/workflows/scorecards-analysis.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index 6278f3689..763a06205 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -40,7 +40,7 @@ jobs:
steps:
- name: "Checkout code"
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # 5.0.0
+ uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # 6.0.1
with:
persist-credentials: false
From a8fbba06b7dda5903513e8d735c5e2026b245c86 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Thu, 1 Jan 2026 05:20:36 -0500
Subject: [PATCH 043/163] Bump actions/upload-artifact from 5.0.0 to 6.0.0
(#420)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 5.0.0 to 6.0.0.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/330a01c490aca151604b8cf639adc76d48f6c5d4...b7c566a772e6b6bfb58ed0dc250532a479d7789f)
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-version: 6.0.0
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
.github/workflows/scorecards-analysis.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index 763a06205..c33dbc425 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -57,7 +57,7 @@ jobs:
publish_results: true
- name: "Upload artifact"
- uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
+ uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: SARIF file
path: results.sarif
From 4afd336d0c81e9e90d5a0e4e424e207976f766f1 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Thu, 1 Jan 2026 07:53:10 -0500
Subject: [PATCH 044/163] Fix XML Schema xsi:schemaLocation name (as opposed to
URI)
---
src/site/xdoc/download_cli.xml | 2 +-
src/site/xdoc/index.xml | 2 +-
src/site/xdoc/issue-tracking.xml | 2 +-
src/site/xdoc/mail-lists.xml | 2 +-
src/site/xdoc/release_1_0.xml | 2 +-
src/site/xdoc/release_1_2.xml | 2 +-
src/site/xdoc/release_1_3.xml | 2 +-
src/site/xdoc/release_1_3_1.xml | 2 +-
src/site/xdoc/release_1_4.xml | 2 +-
src/site/xdoc/upgrading-1.0-to-1.1.xml | 2 +-
10 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/src/site/xdoc/download_cli.xml b/src/site/xdoc/download_cli.xml
index 7f5509a15..0cf212d97 100644
--- a/src/site/xdoc/download_cli.xml
+++ b/src/site/xdoc/download_cli.xml
@@ -58,7 +58,7 @@ limitations under the License.
-->
+ xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd">
Download Apache Commons CLIApache Commons Team
diff --git a/src/site/xdoc/index.xml b/src/site/xdoc/index.xml
index 81bf52a25..f42231025 100644
--- a/src/site/xdoc/index.xml
+++ b/src/site/xdoc/index.xml
@@ -19,7 +19,7 @@
-->
+ xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd">
Apache Commons CLIApache Commons Team
diff --git a/src/site/xdoc/issue-tracking.xml b/src/site/xdoc/issue-tracking.xml
index 0e31acc46..01ff5d784 100644
--- a/src/site/xdoc/issue-tracking.xml
+++ b/src/site/xdoc/issue-tracking.xml
@@ -43,7 +43,7 @@ limitations under the License.
-->
+ xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd">
Apache Commons CLI Issue trackingApache Commons Team
diff --git a/src/site/xdoc/mail-lists.xml b/src/site/xdoc/mail-lists.xml
index f45799390..f1dc8158c 100644
--- a/src/site/xdoc/mail-lists.xml
+++ b/src/site/xdoc/mail-lists.xml
@@ -41,7 +41,7 @@ limitations under the License.
-->
+ xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd">
Apache Commons CLI Mailing ListsApache Commons Team
diff --git a/src/site/xdoc/release_1_0.xml b/src/site/xdoc/release_1_0.xml
index 82f967873..c4bed3274 100644
--- a/src/site/xdoc/release_1_0.xml
+++ b/src/site/xdoc/release_1_0.xml
@@ -17,7 +17,7 @@ limitations under the License.
-->
+ xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd">
Release notes for CLI 1.0Apache Commons Team
diff --git a/src/site/xdoc/release_1_2.xml b/src/site/xdoc/release_1_2.xml
index 1f08f4599..9a978ed05 100644
--- a/src/site/xdoc/release_1_2.xml
+++ b/src/site/xdoc/release_1_2.xml
@@ -17,7 +17,7 @@ limitations under the License.
-->
+ xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd">
Release notes for CLI 1.2Apache Commons Team
diff --git a/src/site/xdoc/release_1_3.xml b/src/site/xdoc/release_1_3.xml
index f069ca03b..421485c04 100644
--- a/src/site/xdoc/release_1_3.xml
+++ b/src/site/xdoc/release_1_3.xml
@@ -17,7 +17,7 @@ limitations under the License.
-->
+ xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd">
Release notes for CLI 1.3Apache Commons Team
diff --git a/src/site/xdoc/release_1_3_1.xml b/src/site/xdoc/release_1_3_1.xml
index e86f45c5a..2be55e05e 100644
--- a/src/site/xdoc/release_1_3_1.xml
+++ b/src/site/xdoc/release_1_3_1.xml
@@ -17,7 +17,7 @@ limitations under the License.
-->
+ xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd">
Release notes for CLI 1.3.1Apache Commons Team
diff --git a/src/site/xdoc/release_1_4.xml b/src/site/xdoc/release_1_4.xml
index 921fdc6e0..7600ce15c 100644
--- a/src/site/xdoc/release_1_4.xml
+++ b/src/site/xdoc/release_1_4.xml
@@ -17,7 +17,7 @@ limitations under the License.
-->
+ xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd">
Release notes for CLI 1.4Apache Commons Team
diff --git a/src/site/xdoc/upgrading-1.0-to-1.1.xml b/src/site/xdoc/upgrading-1.0-to-1.1.xml
index 043df8ccb..4c804d17f 100644
--- a/src/site/xdoc/upgrading-1.0-to-1.1.xml
+++ b/src/site/xdoc/upgrading-1.0-to-1.1.xml
@@ -17,7 +17,7 @@ limitations under the License.
-->
+ xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd">
Upgrading from 1.0 to 1.1Apache Commons Team
From b2a2a767c8cae05d41b9a60104c78b153abd9e40 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Fri, 2 Jan 2026 17:05:03 -0500
Subject: [PATCH 045/163] Bump org.apache.commons:commons-parent from 93 to 94
---
pom.xml | 2 +-
src/changes/changes.xml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/pom.xml b/pom.xml
index 05b8d6c0b..c7bdca429 100644
--- a/pom.xml
+++ b/pom.xml
@@ -19,7 +19,7 @@
org.apache.commonscommons-parent
- 93
+ 944.0.0commons-cli
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index a650a8e90..9497bfc9d 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -29,7 +29,7 @@
Correct HelpFormatter Javadoc #418.
- Bump org.apache.commons:commons-parent from 91 to 93 #414, #416.
+ Bump org.apache.commons:commons-parent from 91 to 94 #414, #416.[test] Bump org.apache.commons:commons-text from 1.14.0 to 1.15.0.
From ff13bdd94583e59bc37a01db00bceac61e07b893 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Sun, 4 Jan 2026 10:56:13 -0500
Subject: [PATCH 046/163] Javadoc
---
.../org/apache/commons/cli/OptionValidator.java | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/src/main/java/org/apache/commons/cli/OptionValidator.java b/src/main/java/org/apache/commons/cli/OptionValidator.java
index df79dc80b..5227d5e4e 100644
--- a/src/main/java/org/apache/commons/cli/OptionValidator.java
+++ b/src/main/java/org/apache/commons/cli/OptionValidator.java
@@ -21,11 +21,14 @@ Licensed to the Apache Software Foundation (ASF) under one or more
* Validates an Option string.
*/
final class OptionValidator {
- /* package private for testing access */
- /** The array of additional characters allowed as the first character in the option but not in the rest of the option */
- static final char[] ADDITIONAL_OPTION_CHARS = {'?', '@'};
- /** The array of additional characters allowed in the rest of the option but not in the first position */
- static final char[] ADDITIONAL_LONG_CHARS = {'-'};
+
+ /**
+ * The array of additional characters allowed as the first character in the option but not in the rest of the option. Package private for tests.
+ */
+ static final char[] ADDITIONAL_OPTION_CHARS = { '?', '@' };
+
+ /** The array of additional characters allowed in the rest of the option but not in the first position Package private for tests. */
+ static final char[] ADDITIONAL_LONG_CHARS = { '-' };
/**
* Returns whether the specified character is a valid character.
From 4f8117eb49096e13a14e5e17c3da0b85fc920896 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Sun, 4 Jan 2026 10:58:44 -0500
Subject: [PATCH 047/163] Javadoc
Add an empty line before a Javadoc comment
---
.../java/org/apache/commons/cli/AmbiguousOptionException.java | 1 +
src/main/java/org/apache/commons/cli/DefaultParser.java | 4 ++++
.../java/org/apache/commons/cli/MissingArgumentException.java | 1 +
.../org/apache/commons/cli/help/AbstractHelpFormatter.java | 1 +
src/test/java/org/apache/commons/cli/ApplicationTest.java | 1 +
src/test/java/org/apache/commons/cli/bug/BugCLI162Test.java | 1 +
6 files changed, 9 insertions(+)
diff --git a/src/main/java/org/apache/commons/cli/AmbiguousOptionException.java b/src/main/java/org/apache/commons/cli/AmbiguousOptionException.java
index d38a81ccc..86cefd19a 100644
--- a/src/main/java/org/apache/commons/cli/AmbiguousOptionException.java
+++ b/src/main/java/org/apache/commons/cli/AmbiguousOptionException.java
@@ -26,6 +26,7 @@ Licensed to the Apache Software Foundation (ASF) under one or more
* @since 1.3
*/
public class AmbiguousOptionException extends UnrecognizedOptionException {
+
/**
* This exception {@code serialVersionUID}.
*/
diff --git a/src/main/java/org/apache/commons/cli/DefaultParser.java b/src/main/java/org/apache/commons/cli/DefaultParser.java
index da7960b3d..6374a6e1d 100644
--- a/src/main/java/org/apache/commons/cli/DefaultParser.java
+++ b/src/main/java/org/apache/commons/cli/DefaultParser.java
@@ -162,19 +162,23 @@ public Builder setStripLeadingAndTrailingQuotes(final Boolean stripLeadingAndTra
* @since 1.10.0
*/
public enum NonOptionAction {
+
/**
* Parsing continues and current token is ignored.
*/
IGNORE,
+
/**
* Parsing continues and current token is added to command line arguments.
*/
SKIP,
+
/**
* Parsing will stop and remaining tokens are added to command line arguments.
* Equivalent of {@code stopAtNonOption = true}.
*/
STOP,
+
/**
* Parsing will abort and exception is thrown.
* Equivalent of {@code stopAtNonOption = false}.
diff --git a/src/main/java/org/apache/commons/cli/MissingArgumentException.java b/src/main/java/org/apache/commons/cli/MissingArgumentException.java
index 5deffa672..adb0e42e0 100644
--- a/src/main/java/org/apache/commons/cli/MissingArgumentException.java
+++ b/src/main/java/org/apache/commons/cli/MissingArgumentException.java
@@ -21,6 +21,7 @@ Licensed to the Apache Software Foundation (ASF) under one or more
* Thrown when an option requiring an argument is not provided with an argument.
*/
public class MissingArgumentException extends ParseException {
+
/**
* This exception {@code serialVersionUID}.
*/
diff --git a/src/main/java/org/apache/commons/cli/help/AbstractHelpFormatter.java b/src/main/java/org/apache/commons/cli/help/AbstractHelpFormatter.java
index e9182af05..7a370e129 100644
--- a/src/main/java/org/apache/commons/cli/help/AbstractHelpFormatter.java
+++ b/src/main/java/org/apache/commons/cli/help/AbstractHelpFormatter.java
@@ -181,6 +181,7 @@ public B setOptionGroupSeparator(final String optionGroupSeparator) {
/** The comparator for sorting {@link Option} collections */
private final Comparator
From 6fb5d04cbe62967615c712adde39609d3ff31e59 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Thu, 22 Jan 2026 15:39:14 +0000
Subject: [PATCH 050/163] Bump actions/setup-java from 5.1.0 to 5.2.0
---
.github/workflows/maven.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml
index 51d7d7b96..41f8d2962 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven.yml
@@ -46,7 +46,7 @@ jobs:
restore-keys: |
${{ runner.os }}-maven-
- name: Set up JDK ${{ matrix.java }}
- uses: actions/setup-java@f2beeb24e141e01a676f977032f5a29d81c9e27e # v5.1.0
+ uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
From 85fe47bf730d0da148866ba4e03f231437865d9a Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Thu, 22 Jan 2026 18:22:33 -0500
Subject: [PATCH 051/163] Bump org.apache.commons:commons-parent from 95 to 96.
---
pom.xml | 2 +-
src/changes/changes.xml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/pom.xml b/pom.xml
index 3f94d523b..7689bad3c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -19,7 +19,7 @@
org.apache.commonscommons-parent
- 95
+ 964.0.0commons-cli
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index f10c8c9ac..49f263d87 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -29,7 +29,7 @@
Correct HelpFormatter Javadoc #418.
- Bump org.apache.commons:commons-parent from 91 to 95 #414, #416.
+ Bump org.apache.commons:commons-parent from 91 to 96 #414, #416.[test] Bump org.apache.commons:commons-text from 1.14.0 to 1.15.0.
From cbdc030978cb15b539e613d9778c9ef53c3d1f8f Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Fri, 23 Jan 2026 07:42:53 -0500
Subject: [PATCH 052/163] Bump actions/checkout from 6.0.1 to 6.0.2
---
.github/workflows/codeql-analysis.yml | 2 +-
.github/workflows/dependency-review.yml | 2 +-
.github/workflows/maven.yml | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index c4c4c6787..cc69f5334 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -45,7 +45,7 @@ jobs:
steps:
- name: Checkout repository
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
+ uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
diff --git a/.github/workflows/dependency-review.yml b/.github/workflows/dependency-review.yml
index 1df866604..a04da5090 100644
--- a/.github/workflows/dependency-review.yml
+++ b/.github/workflows/dependency-review.yml
@@ -26,6 +26,6 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: 'Checkout Repository'
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
+ uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: 'Dependency Review PR'
uses: actions/dependency-review-action@3c4e3dcb1aa7874d2c16be7d79418e9b7efd6261 # v4.8.2
diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml
index 41f8d2962..ad52cc850 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven.yml
@@ -36,7 +36,7 @@ jobs:
# experimental: true
steps:
- - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
+ - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
From 4b148cd3f0b8564e23b1effe75abfccbc4eebb1c Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Mon, 26 Jan 2026 09:36:52 -0500
Subject: [PATCH 053/163] Bump github/codeql-action from 4.31.10 to 4.31.11
---
.github/workflows/codeql-analysis.yml | 6 +++---
.github/workflows/scorecards-analysis.yml | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index cc69f5334..17321f5dd 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -57,7 +57,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@cdefb33c0f6224e58673d9004f47f7cb3e328b89 # v4.31.10
+ uses: github/codeql-action/init@19b2f06db2b6f5108140aeb04014ef02b648f789 # v4.31.11
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@cdefb33c0f6224e58673d9004f47f7cb3e328b89 # v4.31.10
+ uses: github/codeql-action/autobuild@19b2f06db2b6f5108140aeb04014ef02b648f789 # v4.31.11
# âšī¸ 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@cdefb33c0f6224e58673d9004f47f7cb3e328b89 # v4.31.10
+ uses: github/codeql-action/analyze@19b2f06db2b6f5108140aeb04014ef02b648f789 # v4.31.11
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index 128777f07..fcb3824a7 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -64,6 +64,6 @@ jobs:
retention-days: 5
- name: "Upload to code-scanning"
- uses: github/codeql-action/upload-sarif@cdefb33c0f6224e58673d9004f47f7cb3e328b89 # v4.31.10
+ uses: github/codeql-action/upload-sarif@19b2f06db2b6f5108140aeb04014ef02b648f789 # v4.31.11
with:
sarif_file: results.sarif
From 02beefc9d50b0a0b565e301baefd43cc398711b4 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Wed, 28 Jan 2026 15:41:32 -0500
Subject: [PATCH 054/163] Bump github/codeql-action from 4.31.11 to 4.32.0
---
.github/workflows/codeql-analysis.yml | 6 +++---
.github/workflows/scorecards-analysis.yml | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index 17321f5dd..658b44aef 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -57,7 +57,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@19b2f06db2b6f5108140aeb04014ef02b648f789 # v4.31.11
+ uses: github/codeql-action/init@b20883b0cd1f46c72ae0ba6d1090936928f9fa30 # v4.32.0
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@19b2f06db2b6f5108140aeb04014ef02b648f789 # v4.31.11
+ uses: github/codeql-action/autobuild@b20883b0cd1f46c72ae0ba6d1090936928f9fa30 # v4.32.0
# âšī¸ 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@19b2f06db2b6f5108140aeb04014ef02b648f789 # v4.31.11
+ uses: github/codeql-action/analyze@b20883b0cd1f46c72ae0ba6d1090936928f9fa30 # v4.32.0
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index fcb3824a7..caaf0994c 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -64,6 +64,6 @@ jobs:
retention-days: 5
- name: "Upload to code-scanning"
- uses: github/codeql-action/upload-sarif@19b2f06db2b6f5108140aeb04014ef02b648f789 # v4.31.11
+ uses: github/codeql-action/upload-sarif@b20883b0cd1f46c72ae0ba6d1090936928f9fa30 # v4.32.0
with:
sarif_file: results.sarif
From 63c3812b0da77eda76dc4fbcfa8445d4d44beddb Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Fri, 6 Feb 2026 07:32:16 -0500
Subject: [PATCH 055/163] Bump github/codeql-action from 4.32.0 to 4.32.2
---
.github/workflows/codeql-analysis.yml | 6 +++---
.github/workflows/scorecards-analysis.yml | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index 658b44aef..3fb81ad79 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -57,7 +57,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@b20883b0cd1f46c72ae0ba6d1090936928f9fa30 # v4.32.0
+ uses: github/codeql-action/init@45cbd0c69e560cd9e7cd7f8c32362050c9b7ded2 # v4.32.2
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@b20883b0cd1f46c72ae0ba6d1090936928f9fa30 # v4.32.0
+ uses: github/codeql-action/autobuild@45cbd0c69e560cd9e7cd7f8c32362050c9b7ded2 # v4.32.2
# âšī¸ 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@b20883b0cd1f46c72ae0ba6d1090936928f9fa30 # v4.32.0
+ uses: github/codeql-action/analyze@45cbd0c69e560cd9e7cd7f8c32362050c9b7ded2 # v4.32.2
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index caaf0994c..2854c6eca 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -64,6 +64,6 @@ jobs:
retention-days: 5
- name: "Upload to code-scanning"
- uses: github/codeql-action/upload-sarif@b20883b0cd1f46c72ae0ba6d1090936928f9fa30 # v4.32.0
+ uses: github/codeql-action/upload-sarif@45cbd0c69e560cd9e7cd7f8c32362050c9b7ded2 # v4.32.2
with:
sarif_file: results.sarif
From 7c443ae02cea615cf770b2b19019f0cbecda412a Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Fri, 6 Feb 2026 09:22:14 -0500
Subject: [PATCH 056/163] Use max-parallel: 20 as asked by Apache Infra
---
.github/workflows/codeql-analysis.yml | 1 +
.github/workflows/maven.yml | 1 +
2 files changed, 2 insertions(+)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index 3fb81ad79..858b59d14 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -37,6 +37,7 @@ jobs:
security-events: write
strategy:
+ max-parallel: 20
fail-fast: false
matrix:
language: [ 'java' ]
diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml
index ad52cc850..e115cf963 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven.yml
@@ -26,6 +26,7 @@ jobs:
runs-on: ubuntu-latest
continue-on-error: ${{ matrix.experimental }}
strategy:
+ max-parallel: 20
matrix:
java: [ 8, 11, 17, 21, 25 ]
experimental: [false]
From 5dcf06052b246278908c5beb584e8c64f8e5d259 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Mon, 9 Feb 2026 13:11:27 +0000
Subject: [PATCH 057/163] Bump actions/cache from 5.0.2 to 5.0.3
---
.github/workflows/codeql-analysis.yml | 2 +-
.github/workflows/maven.yml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index 858b59d14..9ccfb0327 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -49,7 +49,7 @@ jobs:
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- - uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
+ - uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 #v5.0.3
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml
index e115cf963..1b5748f66 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven.yml
@@ -40,7 +40,7 @@ jobs:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- - uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
+ - uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 #v5.0.3
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
From 5cb14e493baa49778a8bac2bcac81e7f0c281f06 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Fri, 20 Feb 2026 07:39:35 -0500
Subject: [PATCH 058/163] Bump github/codeql-action from 4.32.2 to 4.32.3
---
.github/workflows/codeql-analysis.yml | 6 +++---
.github/workflows/scorecards-analysis.yml | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index 9ccfb0327..b1f4f562d 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -58,7 +58,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@45cbd0c69e560cd9e7cd7f8c32362050c9b7ded2 # v4.32.2
+ uses: github/codeql-action/init@9e907b5e64f6b83e7804b09294d44122997950d6 # v4.32.3
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
@@ -69,7 +69,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@45cbd0c69e560cd9e7cd7f8c32362050c9b7ded2 # v4.32.2
+ uses: github/codeql-action/autobuild@9e907b5e64f6b83e7804b09294d44122997950d6 # v4.32.3
# âšī¸ Command-line programs to run using the OS shell.
# đ https://git.io/JvXDl
@@ -83,4 +83,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
- uses: github/codeql-action/analyze@45cbd0c69e560cd9e7cd7f8c32362050c9b7ded2 # v4.32.2
+ uses: github/codeql-action/analyze@9e907b5e64f6b83e7804b09294d44122997950d6 # v4.32.3
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index 2854c6eca..1fa03f9f1 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -64,6 +64,6 @@ jobs:
retention-days: 5
- name: "Upload to code-scanning"
- uses: github/codeql-action/upload-sarif@45cbd0c69e560cd9e7cd7f8c32362050c9b7ded2 # v4.32.2
+ uses: github/codeql-action/upload-sarif@9e907b5e64f6b83e7804b09294d44122997950d6 # v4.32.3
with:
sarif_file: results.sarif
From ea45a12638774ee258b4b96c82519c8b0503f121 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Mon, 23 Feb 2026 10:55:22 -0500
Subject: [PATCH 059/163] Bump github/codeql-action from 4.32.3 to 4.32.4
---
.github/workflows/codeql-analysis.yml | 6 +++---
.github/workflows/scorecards-analysis.yml | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index b1f4f562d..6c4aa3f57 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -58,7 +58,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@9e907b5e64f6b83e7804b09294d44122997950d6 # v4.32.3
+ uses: github/codeql-action/init@89a39a4e59826350b863aa6b6252a07ad50cf83e # v4.32.4
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
@@ -69,7 +69,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@9e907b5e64f6b83e7804b09294d44122997950d6 # v4.32.3
+ uses: github/codeql-action/autobuild@89a39a4e59826350b863aa6b6252a07ad50cf83e # v4.32.4
# âšī¸ Command-line programs to run using the OS shell.
# đ https://git.io/JvXDl
@@ -83,4 +83,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
- uses: github/codeql-action/analyze@9e907b5e64f6b83e7804b09294d44122997950d6 # v4.32.3
+ uses: github/codeql-action/analyze@89a39a4e59826350b863aa6b6252a07ad50cf83e # v4.32.4
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index 1fa03f9f1..ef311f875 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -64,6 +64,6 @@ jobs:
retention-days: 5
- name: "Upload to code-scanning"
- uses: github/codeql-action/upload-sarif@9e907b5e64f6b83e7804b09294d44122997950d6 # v4.32.3
+ uses: github/codeql-action/upload-sarif@89a39a4e59826350b863aa6b6252a07ad50cf83e # v4.32.4
with:
sarif_file: results.sarif
From 2eeb4d9ed8f60bab82b45d305bbcc348571520ab Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Wed, 25 Feb 2026 08:09:18 -0500
Subject: [PATCH 060/163] File should end in an empty line
---
src/site/xdoc/security.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/site/xdoc/security.xml b/src/site/xdoc/security.xml
index 34b02c75d..1b99e55f5 100644
--- a/src/site/xdoc/security.xml
+++ b/src/site/xdoc/security.xml
@@ -48,4 +48,4 @@
None.
-
\ No newline at end of file
+
From 0744d6309cde24e2a00292d69af6f26ee27cd544 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Fri, 27 Feb 2026 20:41:39 -0500
Subject: [PATCH 061/163] Bump org.apache.commons:commons-parent from 96 to 97.
---
pom.xml | 2 +-
src/changes/changes.xml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/pom.xml b/pom.xml
index 7689bad3c..a57cd8727 100644
--- a/pom.xml
+++ b/pom.xml
@@ -19,7 +19,7 @@
org.apache.commonscommons-parent
- 96
+ 974.0.0commons-cli
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 49f263d87..cb88233d3 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -29,7 +29,7 @@
Correct HelpFormatter Javadoc #418.
- Bump org.apache.commons:commons-parent from 91 to 96 #414, #416.
+ Bump org.apache.commons:commons-parent from 91 to 97 #414, #416.[test] Bump org.apache.commons:commons-text from 1.14.0 to 1.15.0.
From b9cf0c685ad6b818a1c2e18ebc186c7bf885e2cf Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Mon, 2 Mar 2026 08:31:21 -0500
Subject: [PATCH 062/163] Bump github/codeql-action from 4.32.4 to 4.32.5.
---
.github/workflows/codeql-analysis.yml | 6 +++---
.github/workflows/scorecards-analysis.yml | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index 6c4aa3f57..e2ee451b4 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -58,7 +58,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@89a39a4e59826350b863aa6b6252a07ad50cf83e # v4.32.4
+ uses: github/codeql-action/init@c793b717bc78562f491db7b0e93a3a178b099162 # v4.32.5
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
@@ -69,7 +69,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@89a39a4e59826350b863aa6b6252a07ad50cf83e # v4.32.4
+ uses: github/codeql-action/autobuild@c793b717bc78562f491db7b0e93a3a178b099162 # v4.32.5
# âšī¸ Command-line programs to run using the OS shell.
# đ https://git.io/JvXDl
@@ -83,4 +83,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
- uses: github/codeql-action/analyze@89a39a4e59826350b863aa6b6252a07ad50cf83e # v4.32.4
+ uses: github/codeql-action/analyze@c793b717bc78562f491db7b0e93a3a178b099162 # v4.32.5
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index ef311f875..0518c2982 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -64,6 +64,6 @@ jobs:
retention-days: 5
- name: "Upload to code-scanning"
- uses: github/codeql-action/upload-sarif@89a39a4e59826350b863aa6b6252a07ad50cf83e # v4.32.4
+ uses: github/codeql-action/upload-sarif@c793b717bc78562f491db7b0e93a3a178b099162 # v4.32.5
with:
sarif_file: results.sarif
From 1809ba5e05375b4b664e48247939b3b1ca8af403 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Fri, 6 Mar 2026 07:32:28 -0500
Subject: [PATCH 063/163] Bump github/codeql-action from 4.32.5 to 4.32.6
---
.github/workflows/codeql-analysis.yml | 6 +++---
.github/workflows/scorecards-analysis.yml | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index e2ee451b4..4c52d9d27 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -58,7 +58,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@c793b717bc78562f491db7b0e93a3a178b099162 # v4.32.5
+ uses: github/codeql-action/init@0d579ffd059c29b07949a3cce3983f0780820c98 # v4.32.6
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
@@ -69,7 +69,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@c793b717bc78562f491db7b0e93a3a178b099162 # v4.32.5
+ uses: github/codeql-action/autobuild@0d579ffd059c29b07949a3cce3983f0780820c98 # v4.32.6
# âšī¸ Command-line programs to run using the OS shell.
# đ https://git.io/JvXDl
@@ -83,4 +83,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
- uses: github/codeql-action/analyze@c793b717bc78562f491db7b0e93a3a178b099162 # v4.32.5
+ uses: github/codeql-action/analyze@0d579ffd059c29b07949a3cce3983f0780820c98 # v4.32.6
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index 0518c2982..8bb79683c 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -64,6 +64,6 @@ jobs:
retention-days: 5
- name: "Upload to code-scanning"
- uses: github/codeql-action/upload-sarif@c793b717bc78562f491db7b0e93a3a178b099162 # v4.32.5
+ uses: github/codeql-action/upload-sarif@0d579ffd059c29b07949a3cce3983f0780820c98 # v4.32.6
with:
sarif_file: results.sarif
From f32b5b585afcd0746fa75875b0f76b898a993b05 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Mon, 9 Mar 2026 08:43:32 -0400
Subject: [PATCH 064/163] Bump actions/upload-artifact from 6.0.0 to 7.0.0
---
.github/workflows/scorecards-analysis.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index 8bb79683c..c170b0e14 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -57,7 +57,7 @@ jobs:
publish_results: true
- name: "Upload artifact"
- uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
+ uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
with:
name: SARIF file
path: results.sarif
From 609bfa248b67aa4ae3af9673d3aa980dc13e558a Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Thu, 19 Mar 2026 23:46:27 +0000
Subject: [PATCH 065/163] Add a reference to safe deserlialization
---
src/site/xdoc/security.xml | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/src/site/xdoc/security.xml b/src/site/xdoc/security.xml
index 1b99e55f5..740c55065 100644
--- a/src/site/xdoc/security.xml
+++ b/src/site/xdoc/security.xml
@@ -47,5 +47,10 @@
None.
+
+
+ For information about safe deserialization, please see Safe Deserialization.
+
+
From 77824e52df428808779a3b15a8ad945b94e234a9 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Fri, 20 Mar 2026 17:28:53 -0700
Subject: [PATCH 066/163] Bump github/codeql-action from 4.32.6 to 4.34.0
---
.github/workflows/codeql-analysis.yml | 6 +++---
.github/workflows/scorecards-analysis.yml | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index 4c52d9d27..e072e3dd7 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -58,7 +58,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@0d579ffd059c29b07949a3cce3983f0780820c98 # v4.32.6
+ uses: github/codeql-action/init@c6f931105cb2c34c8f901cc885ba1e2e259cf745 # v4.34.0
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
@@ -69,7 +69,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@0d579ffd059c29b07949a3cce3983f0780820c98 # v4.32.6
+ uses: github/codeql-action/autobuild@c6f931105cb2c34c8f901cc885ba1e2e259cf745 # v4.34.0
# âšī¸ Command-line programs to run using the OS shell.
# đ https://git.io/JvXDl
@@ -83,4 +83,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
- uses: github/codeql-action/analyze@0d579ffd059c29b07949a3cce3983f0780820c98 # v4.32.6
+ uses: github/codeql-action/analyze@c6f931105cb2c34c8f901cc885ba1e2e259cf745 # v4.34.0
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index c170b0e14..b7c1f9fb3 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -64,6 +64,6 @@ jobs:
retention-days: 5
- name: "Upload to code-scanning"
- uses: github/codeql-action/upload-sarif@0d579ffd059c29b07949a3cce3983f0780820c98 # v4.32.6
+ uses: github/codeql-action/upload-sarif@c6f931105cb2c34c8f901cc885ba1e2e259cf745 # v4.34.0
with:
sarif_file: results.sarif
From 6f4a473c36842398d22664141407ce5d8a48dafd Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Sun, 22 Mar 2026 22:19:17 -0700
Subject: [PATCH 067/163] Javadoc
---
src/main/java/org/apache/commons/cli/help/TextStyle.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/main/java/org/apache/commons/cli/help/TextStyle.java b/src/main/java/org/apache/commons/cli/help/TextStyle.java
index b0d521ca2..f7851e4bc 100644
--- a/src/main/java/org/apache/commons/cli/help/TextStyle.java
+++ b/src/main/java/org/apache/commons/cli/help/TextStyle.java
@@ -28,7 +28,7 @@ Licensed to the Apache Software Foundation (ASF) under one or more
public final class TextStyle {
/**
- * The alignment possibilities.
+ * Enumerates alignment options.
*/
public enum Alignment {
From eb84f5495a6f458d2fbf4f52a99090f6bb3a7851 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Sun, 22 Mar 2026 22:19:48 -0700
Subject: [PATCH 068/163] Javadoc
---
src/main/java/org/apache/commons/cli/DefaultParser.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/main/java/org/apache/commons/cli/DefaultParser.java b/src/main/java/org/apache/commons/cli/DefaultParser.java
index 6374a6e1d..637009832 100644
--- a/src/main/java/org/apache/commons/cli/DefaultParser.java
+++ b/src/main/java/org/apache/commons/cli/DefaultParser.java
@@ -157,7 +157,7 @@ public Builder setStripLeadingAndTrailingQuotes(final Boolean stripLeadingAndTra
}
/**
- * Enum representing possible actions that may be done when "non option" is discovered during parsing.
+ * Enumerates possible actions that may be done when "non option" is discovered during parsing.
*
* @since 1.10.0
*/
From 4d1a1664c99f1d108ab14c9229464bf1b2782e0a Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Fri, 27 Mar 2026 14:48:44 -0400
Subject: [PATCH 069/163] Bump github/codeql-action from 4.34.0 to 4.34.1
---
.github/workflows/codeql-analysis.yml | 6 +++---
.github/workflows/scorecards-analysis.yml | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index e072e3dd7..1dd2d623c 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -58,7 +58,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@c6f931105cb2c34c8f901cc885ba1e2e259cf745 # v4.34.0
+ uses: github/codeql-action/init@38697555549f1db7851b81482ff19f1fa5c4fedc # v4.34.1
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
@@ -69,7 +69,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@c6f931105cb2c34c8f901cc885ba1e2e259cf745 # v4.34.0
+ uses: github/codeql-action/autobuild@38697555549f1db7851b81482ff19f1fa5c4fedc # v4.34.1
# âšī¸ Command-line programs to run using the OS shell.
# đ https://git.io/JvXDl
@@ -83,4 +83,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
- uses: github/codeql-action/analyze@c6f931105cb2c34c8f901cc885ba1e2e259cf745 # v4.34.0
+ uses: github/codeql-action/analyze@38697555549f1db7851b81482ff19f1fa5c4fedc # v4.34.1
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index b7c1f9fb3..3156ec8b5 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -64,6 +64,6 @@ jobs:
retention-days: 5
- name: "Upload to code-scanning"
- uses: github/codeql-action/upload-sarif@c6f931105cb2c34c8f901cc885ba1e2e259cf745 # v4.34.0
+ uses: github/codeql-action/upload-sarif@38697555549f1db7851b81482ff19f1fa5c4fedc # v4.34.1
with:
sarif_file: results.sarif
From c6880c126934045ef0660bf703f966c938e424cd Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Mon, 30 Mar 2026 07:12:18 -0400
Subject: [PATCH 070/163] Bump actions/cache from 5.0.3 to 5.0.4
---
.github/workflows/codeql-analysis.yml | 2 +-
.github/workflows/maven.yml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index 1dd2d623c..c51994f92 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -49,7 +49,7 @@ jobs:
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- - uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 #v5.0.3
+ - uses: actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7 #v5.0.4
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml
index 1b5748f66..ebfe77ba9 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven.yml
@@ -40,7 +40,7 @@ jobs:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- - uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 #v5.0.3
+ - uses: actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7 #v5.0.4
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
From 0880a17e552dc3938c64fc86be510e191a51c43d Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Tue, 31 Mar 2026 11:48:08 -0400
Subject: [PATCH 071/163] Bump actions/dependency-review-action from 4.8.2 to
4.9.0
---
.github/workflows/dependency-review.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/dependency-review.yml b/.github/workflows/dependency-review.yml
index a04da5090..f0d8ca94e 100644
--- a/.github/workflows/dependency-review.yml
+++ b/.github/workflows/dependency-review.yml
@@ -28,4 +28,4 @@ jobs:
- name: 'Checkout Repository'
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: 'Dependency Review PR'
- uses: actions/dependency-review-action@3c4e3dcb1aa7874d2c16be7d79418e9b7efd6261 # v4.8.2
+ uses: actions/dependency-review-action@2031cfc080254a8a887f58cffee85186f0e49e48 # v4.9.0
From 5c0b94f80b5ea70ea49aadc9b5ff1288f2479b83 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Tue, 31 Mar 2026 21:44:10 -0400
Subject: [PATCH 072/163] Bump github/codeql-action from 4.34.1 to 4.35.1
---
.github/workflows/codeql-analysis.yml | 6 +++---
.github/workflows/scorecards-analysis.yml | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index c51994f92..7d3074419 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -58,7 +58,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@38697555549f1db7851b81482ff19f1fa5c4fedc # v4.34.1
+ uses: github/codeql-action/init@c10b8064de6f491fea524254123dbe5e09572f13 # v4.35.1
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
@@ -69,7 +69,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@38697555549f1db7851b81482ff19f1fa5c4fedc # v4.34.1
+ uses: github/codeql-action/autobuild@c10b8064de6f491fea524254123dbe5e09572f13 # v4.35.1
# âšī¸ Command-line programs to run using the OS shell.
# đ https://git.io/JvXDl
@@ -83,4 +83,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
- uses: github/codeql-action/analyze@38697555549f1db7851b81482ff19f1fa5c4fedc # v4.34.1
+ uses: github/codeql-action/analyze@c10b8064de6f491fea524254123dbe5e09572f13 # v4.35.1
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index 3156ec8b5..85a584736 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -64,6 +64,6 @@ jobs:
retention-days: 5
- name: "Upload to code-scanning"
- uses: github/codeql-action/upload-sarif@38697555549f1db7851b81482ff19f1fa5c4fedc # v4.34.1
+ uses: github/codeql-action/upload-sarif@c10b8064de6f491fea524254123dbe5e09572f13 # v4.35.1
with:
sarif_file: results.sarif
From 05e38fc9e5339f7614a4eb264a0909c241504be8 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Wed, 1 Apr 2026 06:20:26 -0400
Subject: [PATCH 073/163] Bump actions/checkout from 6.0.1 to 6.0.2
---
.github/workflows/scorecards-analysis.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index 85a584736..a0e5b9faf 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -40,7 +40,7 @@ jobs:
steps:
- name: "Checkout code"
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # 6.0.1
+ uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # 6.0.2
with:
persist-credentials: false
From 8ba7c15efb8bd90fe8e3b01635741335adb88c3b Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Wed, 1 Apr 2026 13:58:03 -0400
Subject: [PATCH 074/163] [Javadoc] Fix Checkstyle error
- This can only happen if you use the latest version of Checkstyle
available from commons-parent:98-SNAPSHOT
- [ERROR]
src/main/java/org/apache/commons/cli/OptionValidator.java:[101] (imports)
UnusedImports: Javadoc comment at column 8 has parse error. Details: no
viable alternative at input '' while parsing HTML_ELEMENT
---
src/main/java/org/apache/commons/cli/OptionValidator.java | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/main/java/org/apache/commons/cli/OptionValidator.java b/src/main/java/org/apache/commons/cli/OptionValidator.java
index 5227d5e4e..db2688aea 100644
--- a/src/main/java/org/apache/commons/cli/OptionValidator.java
+++ b/src/main/java/org/apache/commons/cli/OptionValidator.java
@@ -98,8 +98,9 @@ private static boolean search(final char[] chars, final char c) {
*
a single character {@code opt} that is either Chars.SP(special case), '?', '@' or a letter
*
a multi character {@code opt} that only contains valid characters
*
- *
+ *
* A character is valid if any of the following conditions are true:
+ *
*
*
it is a letter
*
it is a currency symbol (such as '$')
@@ -111,8 +112,9 @@ private static boolean search(final char[] chars, final char c) {
*
isIdentifierIgnorable returns true for the character
*
it is a hyphen/dash ('-')
*
- *
+ *
* In case {@code opt} is {@code null} no further validation is performed.
+ *
*
* @param option The option string to validate, may be null.
* @throws IllegalArgumentException if the Option is not valid.
From dcf216556128feb34bd9010f572def4480c16d54 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Fri, 3 Apr 2026 06:52:50 -0400
Subject: [PATCH 075/163] Run builds only on push to master and pull requests
---
.github/workflows/maven.yml | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml
index ebfe77ba9..ed331f24a 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven.yml
@@ -15,7 +15,11 @@
name: Java CI
-on: [push, pull_request]
+on:
+ push:
+ branches:
+ - 'master'
+ pull_request: {}
permissions:
contents: read
From f0f3410551c15ad53dc85a50bec93dd62030248b Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Tue, 7 Apr 2026 12:25:03 -0400
Subject: [PATCH 076/163] Bump org.apache.commons:commons-parent from 97 to 98
---
pom.xml | 2 +-
src/changes/changes.xml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/pom.xml b/pom.xml
index a57cd8727..c72373871 100644
--- a/pom.xml
+++ b/pom.xml
@@ -19,7 +19,7 @@
org.apache.commonscommons-parent
- 97
+ 984.0.0commons-cli
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index cb88233d3..408890c49 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -29,7 +29,7 @@
Correct HelpFormatter Javadoc #418.
- Bump org.apache.commons:commons-parent from 91 to 97 #414, #416.
+ Bump org.apache.commons:commons-parent from 91 to 98 #414, #416.[test] Bump org.apache.commons:commons-text from 1.14.0 to 1.15.0.
From ceeb3eb502da1d6bb62a4649baba9b411d5899cd Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Tue, 14 Apr 2026 07:45:42 -0400
Subject: [PATCH 077/163] Bump action/cache from 5.0.4 to 5.0.5
---
.github/workflows/codeql-analysis.yml | 2 +-
.github/workflows/maven.yml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index 7d3074419..61abbca77 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -49,7 +49,7 @@ jobs:
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- - uses: actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7 #v5.0.4
+ - uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae #v5.0.5
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml
index ed331f24a..0ac859b4a 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven.yml
@@ -44,7 +44,7 @@ jobs:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- - uses: actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7 #v5.0.4
+ - uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae #v5.0.5
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
From 8c1640b926584818fcaa2ffa2b583fa0e94b703e Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Tue, 14 Apr 2026 07:52:31 -0400
Subject: [PATCH 078/163] Bump actions/upload-artifact from 7.0.0 to 7.0.1
---
.github/workflows/scorecards-analysis.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index a0e5b9faf..4ad7175c8 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -57,7 +57,7 @@ jobs:
publish_results: true
- name: "Upload artifact"
- uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
+ uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: SARIF file
path: results.sarif
From 97dc4bed0218ae0b210e6dd6419e0d6a7ecbf5b6 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Thu, 16 Apr 2026 07:10:09 -0400
Subject: [PATCH 079/163] Bump github/codeql-action from 4.35.1 to 4.35.2
---
.github/workflows/codeql-analysis.yml | 6 +++---
.github/workflows/scorecards-analysis.yml | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index 61abbca77..b7b7fdf05 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -58,7 +58,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@c10b8064de6f491fea524254123dbe5e09572f13 # v4.35.1
+ uses: github/codeql-action/init@95e58e9a2cdfd71adc6e0353d5c52f41a045d225 # v4.35.2
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
@@ -69,7 +69,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@c10b8064de6f491fea524254123dbe5e09572f13 # v4.35.1
+ uses: github/codeql-action/autobuild@95e58e9a2cdfd71adc6e0353d5c52f41a045d225 # v4.35.2
# âšī¸ Command-line programs to run using the OS shell.
# đ https://git.io/JvXDl
@@ -83,4 +83,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
- uses: github/codeql-action/analyze@c10b8064de6f491fea524254123dbe5e09572f13 # v4.35.1
+ uses: github/codeql-action/analyze@95e58e9a2cdfd71adc6e0353d5c52f41a045d225 # v4.35.2
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index 4ad7175c8..16e37f605 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -64,6 +64,6 @@ jobs:
retention-days: 5
- name: "Upload to code-scanning"
- uses: github/codeql-action/upload-sarif@c10b8064de6f491fea524254123dbe5e09572f13 # v4.35.1
+ uses: github/codeql-action/upload-sarif@95e58e9a2cdfd71adc6e0353d5c52f41a045d225 # v4.35.2
with:
sarif_file: results.sarif
From edc00c59d91bb3995efd42ae68e92b461e12a79f Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Thu, 23 Apr 2026 06:42:03 -0400
Subject: [PATCH 080/163] Bump commons-io:commons-io from 2.21.0 to 2.22.0.
---
pom.xml | 2 +-
src/changes/changes.xml | 1 +
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/pom.xml b/pom.xml
index c72373871..b6ba9cef7 100644
--- a/pom.xml
+++ b/pom.xml
@@ -68,7 +68,7 @@
commons-iocommons-io
- 2.21.0
+ 2.22.0test
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 408890c49..757b2bd3c 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -31,6 +31,7 @@
Bump org.apache.commons:commons-parent from 91 to 98 #414, #416.[test] Bump org.apache.commons:commons-text from 1.14.0 to 1.15.0.
+ Bump commons-io:commons-io from 2.21.0 to 2.22.0.
From 7be3807fa6fd4ad29241074f6ddeb23cfc677775 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Sun, 26 Apr 2026 07:31:08 -0400
Subject: [PATCH 081/163] Bump org.apache.commons:commons-parent from 98 to 99
---
pom.xml | 2 +-
src/changes/changes.xml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/pom.xml b/pom.xml
index b6ba9cef7..ceb0c98cf 100644
--- a/pom.xml
+++ b/pom.xml
@@ -19,7 +19,7 @@
org.apache.commonscommons-parent
- 98
+ 994.0.0commons-cli
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 757b2bd3c..e28659e1b 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -29,7 +29,7 @@
Correct HelpFormatter Javadoc #418.
- Bump org.apache.commons:commons-parent from 91 to 98 #414, #416.
+ Bump org.apache.commons:commons-parent from 91 to 99 #414, #416.[test] Bump org.apache.commons:commons-text from 1.14.0 to 1.15.0.Bump commons-io:commons-io from 2.21.0 to 2.22.0.
From a15bf01d84102b1892672ddf4818b5764e7ba111 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Tue, 5 May 2026 11:19:15 -0400
Subject: [PATCH 082/163] Bump github/codeql-action from 4.35.2 to 4.35.3
---
.github/workflows/codeql-analysis.yml | 6 +++---
.github/workflows/scorecards-analysis.yml | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index b7b7fdf05..3571ff3f4 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -58,7 +58,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@95e58e9a2cdfd71adc6e0353d5c52f41a045d225 # v4.35.2
+ uses: github/codeql-action/init@e46ed2cbd01164d986452f91f178727624ae40d7 # v4.35.3
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
@@ -69,7 +69,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@95e58e9a2cdfd71adc6e0353d5c52f41a045d225 # v4.35.2
+ uses: github/codeql-action/autobuild@e46ed2cbd01164d986452f91f178727624ae40d7 # v4.35.3
# âšī¸ Command-line programs to run using the OS shell.
# đ https://git.io/JvXDl
@@ -83,4 +83,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
- uses: github/codeql-action/analyze@95e58e9a2cdfd71adc6e0353d5c52f41a045d225 # v4.35.2
+ uses: github/codeql-action/analyze@e46ed2cbd01164d986452f91f178727624ae40d7 # v4.35.3
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index 16e37f605..95dbcd027 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -64,6 +64,6 @@ jobs:
retention-days: 5
- name: "Upload to code-scanning"
- uses: github/codeql-action/upload-sarif@95e58e9a2cdfd71adc6e0353d5c52f41a045d225 # v4.35.2
+ uses: github/codeql-action/upload-sarif@e46ed2cbd01164d986452f91f178727624ae40d7 # v4.35.3
with:
sarif_file: results.sarif
From a014c11faca29ccdca1d87322922e08a1af68c98 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Sat, 9 May 2026 09:22:25 -0400
Subject: [PATCH 083/163] Bump experimental build from Java 26-ea to 27-ea and
add Java 26 production build
---
.github/workflows/maven.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml
index 0ac859b4a..2efb9cafc 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven.yml
@@ -32,10 +32,10 @@ jobs:
strategy:
max-parallel: 20
matrix:
- java: [ 8, 11, 17, 21, 25 ]
+ java: [ 8, 11, 17, 21, 25, 26 ]
experimental: [false]
include:
- - java: 26-ea
+ - java: 27-ea
experimental: true
# - java: 27-ea
# experimental: true
From 29df694a6464963e11fe5fd5543ce2bc22db1779 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Tue, 12 May 2026 18:44:28 +0000
Subject: [PATCH 084/163] Bump github/codeql-action from 4.35.3 to 4.35.4
---
.github/workflows/codeql-analysis.yml | 6 +++---
.github/workflows/scorecards-analysis.yml | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index 3571ff3f4..f1e68973e 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -58,7 +58,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@e46ed2cbd01164d986452f91f178727624ae40d7 # v4.35.3
+ uses: github/codeql-action/init@68bde559dea0fdcac2102bfdf6230c5f70eb485e# v4.35.4
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
@@ -69,7 +69,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@e46ed2cbd01164d986452f91f178727624ae40d7 # v4.35.3
+ uses: github/codeql-action/autobuild@68bde559dea0fdcac2102bfdf6230c5f70eb485e# v4.35.4
# âšī¸ Command-line programs to run using the OS shell.
# đ https://git.io/JvXDl
@@ -83,4 +83,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
- uses: github/codeql-action/analyze@e46ed2cbd01164d986452f91f178727624ae40d7 # v4.35.3
+ uses: github/codeql-action/analyze@68bde559dea0fdcac2102bfdf6230c5f70eb485e# v4.35.4
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index 95dbcd027..4ed093b53 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -64,6 +64,6 @@ jobs:
retention-days: 5
- name: "Upload to code-scanning"
- uses: github/codeql-action/upload-sarif@e46ed2cbd01164d986452f91f178727624ae40d7 # v4.35.3
+ uses: github/codeql-action/upload-sarif@68bde559dea0fdcac2102bfdf6230c5f70eb485e# v4.35.4
with:
sarif_file: results.sarif
From e717fd63636f24ce6e5250d62524968d77b5d449 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Tue, 12 May 2026 18:46:13 +0000
Subject: [PATCH 085/163] Bump github/codeql-action from 4.35.3 to 4.35.4
---
.github/workflows/codeql-analysis.yml | 6 +++---
.github/workflows/scorecards-analysis.yml | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index f1e68973e..e597a6dbb 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -58,7 +58,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@68bde559dea0fdcac2102bfdf6230c5f70eb485e# v4.35.4
+ uses: github/codeql-action/init@68bde559dea0fdcac2102bfdf6230c5f70eb485e # v4.35.4
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
@@ -69,7 +69,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@68bde559dea0fdcac2102bfdf6230c5f70eb485e# v4.35.4
+ uses: github/codeql-action/autobuild@68bde559dea0fdcac2102bfdf6230c5f70eb485e # v4.35.4
# âšī¸ Command-line programs to run using the OS shell.
# đ https://git.io/JvXDl
@@ -83,4 +83,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
- uses: github/codeql-action/analyze@68bde559dea0fdcac2102bfdf6230c5f70eb485e# v4.35.4
+ uses: github/codeql-action/analyze@68bde559dea0fdcac2102bfdf6230c5f70eb485e # v4.35.4
diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml
index 4ed093b53..2eed26f73 100644
--- a/.github/workflows/scorecards-analysis.yml
+++ b/.github/workflows/scorecards-analysis.yml
@@ -64,6 +64,6 @@ jobs:
retention-days: 5
- name: "Upload to code-scanning"
- uses: github/codeql-action/upload-sarif@68bde559dea0fdcac2102bfdf6230c5f70eb485e# v4.35.4
+ uses: github/codeql-action/upload-sarif@68bde559dea0fdcac2102bfdf6230c5f70eb485e # v4.35.4
with:
sarif_file: results.sarif
From 6dfbcc2991eb21ca59f375d067c470e004360523 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Sat, 16 May 2026 11:05:59 +0000
Subject: [PATCH 086/163] Use JUnit 5 conventions
---
.../java/org/apache/commons/cli/help/HelpFormatterTest.java | 2 +-
.../org/apache/commons/cli/help/TextHelpAppendableTest.java | 4 ++--
.../cli/help/{TextStyleTests.java => TextStyleTest.java} | 4 ++--
3 files changed, 5 insertions(+), 5 deletions(-)
rename src/test/java/org/apache/commons/cli/help/{TextStyleTests.java => TextStyleTest.java} (98%)
diff --git a/src/test/java/org/apache/commons/cli/help/HelpFormatterTest.java b/src/test/java/org/apache/commons/cli/help/HelpFormatterTest.java
index 41e9c08d0..4e54fb29f 100644
--- a/src/test/java/org/apache/commons/cli/help/HelpFormatterTest.java
+++ b/src/test/java/org/apache/commons/cli/help/HelpFormatterTest.java
@@ -161,7 +161,7 @@ void testPrintHelpHeader() throws IOException {
}
@Test
- public void testPrintHelpWithIterableOptions() throws IOException {
+ void testPrintHelpWithIterableOptions() throws IOException {
final StringBuilder sb = new StringBuilder();
final TextHelpAppendable serializer = new TextHelpAppendable(sb);
HelpFormatter formatter = HelpFormatter.builder().setHelpAppendable(serializer).get();
diff --git a/src/test/java/org/apache/commons/cli/help/TextHelpAppendableTest.java b/src/test/java/org/apache/commons/cli/help/TextHelpAppendableTest.java
index d29fcddbc..9c58427d5 100644
--- a/src/test/java/org/apache/commons/cli/help/TextHelpAppendableTest.java
+++ b/src/test/java/org/apache/commons/cli/help/TextHelpAppendableTest.java
@@ -37,13 +37,13 @@ Licensed to the Apache Software Foundation (ASF) under one or more
/**
* Tests {@link TextHelpAppendable}.
*/
-public final class TextHelpAppendableTest {
+final class TextHelpAppendableTest {
private StringBuilder sb;
private TextHelpAppendable underTest;
@BeforeEach
- public void setUp() {
+ void setUp() {
sb = new StringBuilder();
underTest = new TextHelpAppendable(sb);
}
diff --git a/src/test/java/org/apache/commons/cli/help/TextStyleTests.java b/src/test/java/org/apache/commons/cli/help/TextStyleTest.java
similarity index 98%
rename from src/test/java/org/apache/commons/cli/help/TextStyleTests.java
rename to src/test/java/org/apache/commons/cli/help/TextStyleTest.java
index e745922a6..b3e946278 100644
--- a/src/test/java/org/apache/commons/cli/help/TextStyleTests.java
+++ b/src/test/java/org/apache/commons/cli/help/TextStyleTest.java
@@ -28,9 +28,9 @@ Licensed to the Apache Software Foundation (ASF) under one or more
import org.junit.jupiter.params.provider.Arguments;
import org.junit.jupiter.params.provider.MethodSource;
-public class TextStyleTests {
+class TextStyleTest {
- public static Stream padTestData() {
+ static Stream padTestData() {
final List lst = new ArrayList<>();
final TextStyle.Builder builder = TextStyle.builder();
builder.setIndent(5);
From 1b1503363898d1ff4c34f215c283a1d6e2940435 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Sat, 16 May 2026 11:06:36 +0000
Subject: [PATCH 087/163] Bump org.apache.commons:commons-parent from 99 to 100
---
pom.xml | 2 +-
src/changes/changes.xml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/pom.xml b/pom.xml
index ceb0c98cf..e43114d78 100644
--- a/pom.xml
+++ b/pom.xml
@@ -19,7 +19,7 @@
org.apache.commonscommons-parent
- 99
+ 1004.0.0commons-cli
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index e28659e1b..6b740aeab 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -29,7 +29,7 @@
Correct HelpFormatter Javadoc #418.
- Bump org.apache.commons:commons-parent from 91 to 99 #414, #416.
+ Bump org.apache.commons:commons-parent from 91 to 100 #414, #416.[test] Bump org.apache.commons:commons-text from 1.14.0 to 1.15.0.Bump commons-io:commons-io from 2.21.0 to 2.22.0.
From 96a18801b01b4bd85af0a4011c34cc28e9db7db4 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Sat, 16 May 2026 11:20:31 +0000
Subject: [PATCH 088/163] Add TODO comments for 2.0
---
.../java/org/apache/commons/cli/help/TextHelpAppendable.java | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/main/java/org/apache/commons/cli/help/TextHelpAppendable.java b/src/main/java/org/apache/commons/cli/help/TextHelpAppendable.java
index 3e1e47758..0ca02fe9c 100644
--- a/src/main/java/org/apache/commons/cli/help/TextHelpAppendable.java
+++ b/src/main/java/org/apache/commons/cli/help/TextHelpAppendable.java
@@ -408,6 +408,7 @@ protected TextStyle.Builder resize(final TextStyle.Builder builder, final double
*/
public void setIndent(final int indent) {
textStyleBuilder.setIndent(indent);
+ // TODO return this in 2.0
}
/**
@@ -417,6 +418,7 @@ public void setIndent(final int indent) {
*/
public void setLeftPad(final int leftPad) {
textStyleBuilder.setLeftPad(leftPad);
+ // TODO return this in 2.0
}
/**
@@ -426,6 +428,7 @@ public void setLeftPad(final int leftPad) {
*/
public void setMaxWidth(final int maxWidth) {
textStyleBuilder.setMaxWidth(maxWidth);
+ // TODO return this in 2.0
}
/**
From ca6d3362c46ef0f94bc10d92efaae8d3c93efc42 Mon Sep 17 00:00:00 2001
From: Gary Gregory
Date: Sat, 16 May 2026 11:48:33 +0000
Subject: [PATCH 089/163] Internal refactoring
---
.../commons/cli/help/HelpFormatter.java | 24 +++++++++++++++++--
1 file changed, 22 insertions(+), 2 deletions(-)
diff --git a/src/main/java/org/apache/commons/cli/help/HelpFormatter.java b/src/main/java/org/apache/commons/cli/help/HelpFormatter.java
index f0723706a..c9d5080ba 100644
--- a/src/main/java/org/apache/commons/cli/help/HelpFormatter.java
+++ b/src/main/java/org/apache/commons/cli/help/HelpFormatter.java
@@ -18,7 +18,6 @@ Licensed to the Apache Software Foundation (ASF) under one or more
package org.apache.commons.cli.help;
import java.util.ArrayList;
-import java.util.Arrays;
import java.util.List;
import org.apache.commons.cli.Option;
@@ -62,6 +61,21 @@ Licensed to the Apache Software Foundation (ASF) under one or more
*/
public class HelpFormatter extends AbstractHelpFormatter {
+ /**
+ * The default "Since" column label.
+ */
+ private static final String LABEL_SINCE = "Since";
+
+ /**
+ * The default "Description" column label.
+ */
+ private static final String LABEL_DESCRIPTION = "Description";
+
+ /**
+ * The default "Options" column label.
+ */
+ private static final String LABEL_OPTIONS = "Options";
+
/**
* A builder for the HelpFormatter. Intended to make more complex uses of the HelpFormatter class easier. Default values are:
*
@@ -184,6 +198,12 @@ public TableDefinition getTableDefinition(final Iterable