This is an automated email from the ASF dual-hosted git repository.
sjaranowski pushed a commit to branch maven-3.10.x
in repository https://gitbox.apache.org/repos/asf/maven.git
The following commit(s) were added to refs/heads/maven-3.10.x by this push:
new 6f646d7ffa Trim `threadConfiguration` to accept input surrounded with
spaces (#11851)
6f646d7ffa is described below
commit 6f646d7ffa3843ce1a75f94afa270266d5b7a8e4
Author: Piotrek Żygieło <[email protected]>
AuthorDate: Sat Mar 28 19:01:59 2026 +0100
Trim `threadConfiguration` to accept input surrounded with spaces (#11851)
* Test that `c` (lower case) in `Nc` is not recognized as hexdigit
* Test parsing threads from ` 1C` input
* Test parsing threads from ` 1C ` input
* Trim `threadConfiguration` to accept input like ` 1C `
* Test parsing threads from ` 1` and ` 1 ` input
* Use trimmed input also for whole numbers
---------
Co-authored-by: Piotrek Żygieło <[email protected]>
---
maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java | 3 ++-
.../src/test/java/org/apache/maven/cli/MavenCliTest.java | 8 ++++++++
2 files changed, 10 insertions(+), 1 deletion(-)
diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
b/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
index e0ed45c3a4..5a8bb5523d 100644
--- a/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
+++ b/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
@@ -1453,7 +1453,8 @@ private MavenExecutionRequest populateRequest(CliRequest
cliRequest, MavenExecut
return request;
}
- int calculateDegreeOfConcurrency(String threadConfiguration) {
+ int calculateDegreeOfConcurrency(String originalThreadConfiguration) {
+ String threadConfiguration = originalThreadConfiguration.trim();
if (threadConfiguration.endsWith("C")) {
threadConfiguration = threadConfiguration.substring(0,
threadConfiguration.length() - 1);
diff --git
a/maven-embedder/src/test/java/org/apache/maven/cli/MavenCliTest.java
b/maven-embedder/src/test/java/org/apache/maven/cli/MavenCliTest.java
index e5fd93acb0..108667ed07 100644
--- a/maven-embedder/src/test/java/org/apache/maven/cli/MavenCliTest.java
+++ b/maven-embedder/src/test/java/org/apache/maven/cli/MavenCliTest.java
@@ -82,10 +82,18 @@ public void testCalculateDegreeOfConcurrency() {
assertThrows(IllegalArgumentException.class, () ->
cli.calculateDegreeOfConcurrency("2C2"));
assertThrows(IllegalArgumentException.class, () ->
cli.calculateDegreeOfConcurrency("CXXX"));
assertThrows(IllegalArgumentException.class, () ->
cli.calculateDegreeOfConcurrency("XXXC"));
+ assertThrows(IllegalArgumentException.class, () ->
cli.calculateDegreeOfConcurrency("1c"));
+ assertThrows(IllegalArgumentException.class, () ->
cli.calculateDegreeOfConcurrency(" 1c"));
+ assertThrows(IllegalArgumentException.class, () ->
cli.calculateDegreeOfConcurrency("1c "));
+ assertThrows(IllegalArgumentException.class, () ->
cli.calculateDegreeOfConcurrency(" 1c "));
int cpus = Runtime.getRuntime().availableProcessors();
assertEquals((int) (cpus * 2.2),
cli.calculateDegreeOfConcurrency("2.2C"));
assertEquals(1, cli.calculateDegreeOfConcurrency("0.0001C"));
+ assertEquals(1 * cpus, cli.calculateDegreeOfConcurrency(" 1C"));
+ assertEquals(1 * cpus, cli.calculateDegreeOfConcurrency(" 1C "));
+ assertEquals(1, cli.calculateDegreeOfConcurrency(" 1"));
+ assertEquals(1, cli.calculateDegreeOfConcurrency(" 1 "));
assertThrows(IllegalArgumentException.class, () ->
cli.calculateDegreeOfConcurrency("-2.2C"));
assertThrows(IllegalArgumentException.class, () ->
cli.calculateDegreeOfConcurrency("0C"));
}