This is an automated email from the ASF dual-hosted git repository.
gnodet pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-mvnd.git
The following commit(s) were added to refs/heads/master by this push:
new 2f879b24 Bump maven.version from 4.0.0-rc-4 to 4.0.0-rc-5 (#1477)
2f879b24 is described below
commit 2f879b24fb99330f741c67f46a04d52569677451
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
AuthorDate: Tue Nov 25 09:17:58 2025 +0100
Bump maven.version from 4.0.0-rc-4 to 4.0.0-rc-5 (#1477)
Bump maven.version from 4.0.0-rc-4 to 4.0.0-rc-5
Bumps `maven.version` from 4.0.0-rc-4 to 4.0.0-rc-5.
Updates `org.apache.maven:maven-plugin-api` from 4.0.0-rc-4 to 4.0.0-rc-5
Updates `org.apache.maven:maven-model` from 4.0.0-rc-4 to 4.0.0-rc-5
Updates `org.apache.maven:maven-core` from 4.0.0-rc-4 to 4.0.0-rc-5
Updates `org.apache.maven:maven-resolver-provider` from 4.0.0-rc-4 to
4.0.0-rc-5
Updates `org.apache.maven:maven-embedder` from 4.0.0-rc-4 to 4.0.0-rc-5
Updates `org.apache.maven:maven-cli` from 4.0.0-rc-4 to 4.0.0-rc-5
Updates `org.apache.maven:maven-api-di` from 4.0.0-rc-4 to 4.0.0-rc-5
Updates `org.apache.maven:maven-jline` from 4.0.0-rc-4 to 4.0.0-rc-5
Updates `org.apache.maven:maven-logging` from 4.0.0-rc-4 to 4.0.0-rc-5
Updates `org.apache.maven:apache-maven` from 4.0.0-rc-4 to 4.0.0-rc-5
- [Release notes](https://github.com/apache/maven/releases)
-
[Commits](https://github.com/apache/maven/compare/maven-4.0.0-rc-4...maven-4.0.0-rc-5)
---
updated-dependencies:
- dependency-name: org.apache.maven:maven-plugin-api
dependency-version: 4.0.0-rc-5
dependency-type: direct:production
update-type: version-update:semver-patch
- dependency-name: org.apache.maven:maven-model
dependency-version: 4.0.0-rc-5
dependency-type: direct:development
update-type: version-update:semver-patch
- dependency-name: org.apache.maven:maven-core
dependency-version: 4.0.0-rc-5
dependency-type: direct:production
update-type: version-update:semver-patch
- dependency-name: org.apache.maven:maven-resolver-provider
dependency-version: 4.0.0-rc-5
dependency-type: direct:production
update-type: version-update:semver-patch
- dependency-name: org.apache.maven:maven-embedder
dependency-version: 4.0.0-rc-5
dependency-type: direct:production
update-type: version-update:semver-patch
- dependency-name: org.apache.maven:maven-cli
dependency-version: 4.0.0-rc-5
dependency-type: direct:production
update-type: version-update:semver-patch
- dependency-name: org.apache.maven:maven-api-di
dependency-version: 4.0.0-rc-5
dependency-type: direct:production
update-type: version-update:semver-patch
- dependency-name: org.apache.maven:maven-jline
dependency-version: 4.0.0-rc-5
dependency-type: direct:production
update-type: version-update:semver-patch
- dependency-name: org.apache.maven:maven-logging
dependency-version: 4.0.0-rc-5
dependency-type: direct:production
update-type: version-update:semver-patch
- dependency-name: org.apache.maven:apache-maven
dependency-version: 4.0.0-rc-5
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <[email protected]>
* Replace junit-platform-maven-plugin with maven-exec-plugin
The junit-platform-maven-plugin is no longer maintained and causes issues
with Maven 4.0.0-rc-5 due to stricter request validation.
This commit refactors the JUnitPlatformTest to use maven-exec-plugin
instead:
- Removed JUnitPlatformTest and junit-platform test project
- Extended ExecOutputTest with a new cleanTestInheritIO() test method
- Added new execution to exec-output/pom.xml using exec:java goal with
inheritIo=true
- Created HelloWorld.java class for testing inheritIO functionality
The refactoring maintains the same test coverage while using a more
maintainable plugin.
Related to #1477 and sormuras/junit-platform-maven-plugin#117
---------
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot]
<49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Sylwester Lachiewicz <[email protected]>
Co-authored-by: Guillaume Nodet <[email protected]>
---
.mvn/wrapper/maven-wrapper.properties | 2 +-
.../org/apache/maven/cli/DaemonMavenParser.java | 4 +-
.../java/org/mvndaemon/mvnd/it/ExecOutputTest.java | 16 +++
.../org/mvndaemon/mvnd/it/JUnitPlatformTest.java | 55 -----------
.../src/test/projects/exec-output/pom.xml | 11 +++
.../java/org/mvndaemon/mvnd/test/HelloWorld.java} | 8 +-
.../test/projects/junit-platform/.mvn/maven.config | 3 -
.../src/test/projects/junit-platform/pom.xml | 109 ---------------------
pom.xml | 2 +-
9 files changed, 34 insertions(+), 176 deletions(-)
diff --git a/.mvn/wrapper/maven-wrapper.properties
b/.mvn/wrapper/maven-wrapper.properties
index 2733d284..06e485eb 100644
--- a/.mvn/wrapper/maven-wrapper.properties
+++ b/.mvn/wrapper/maven-wrapper.properties
@@ -16,4 +16,4 @@
# under the License.
wrapperVersion=3.3.2
distributionType=only-script
-distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/4.0.0-rc-3/apache-maven-4.0.0-rc-3-bin.zip
+distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/4.0.0-rc-5/apache-maven-4.0.0-rc-5-bin.zip
diff --git a/daemon/src/main/java/org/apache/maven/cli/DaemonMavenParser.java
b/daemon/src/main/java/org/apache/maven/cli/DaemonMavenParser.java
index f4f6848a..ac9b7090 100644
--- a/daemon/src/main/java/org/apache/maven/cli/DaemonMavenParser.java
+++ b/daemon/src/main/java/org/apache/maven/cli/DaemonMavenParser.java
@@ -50,8 +50,8 @@ public class DaemonMavenParser extends MavenParser {
}
@Override
- protected List<CoreExtension> readCoreExtensionsDescriptorFromFile(Path
extensionsFile) {
- return
filterCoreExtensions(super.readCoreExtensionsDescriptorFromFile(extensionsFile));
+ protected List<CoreExtension> readCoreExtensionsDescriptorFromFile(Path
extensionsFile, boolean allowMetaVersions) {
+ return
filterCoreExtensions(super.readCoreExtensionsDescriptorFromFile(extensionsFile,
allowMetaVersions));
}
protected static List<CoreExtension>
filterCoreExtensions(List<CoreExtension> coreExtensions) {
diff --git
a/integration-tests/src/test/java/org/mvndaemon/mvnd/it/ExecOutputTest.java
b/integration-tests/src/test/java/org/mvndaemon/mvnd/it/ExecOutputTest.java
index 0bc94bd0..d2cc5d13 100644
--- a/integration-tests/src/test/java/org/mvndaemon/mvnd/it/ExecOutputTest.java
+++ b/integration-tests/src/test/java/org/mvndaemon/mvnd/it/ExecOutputTest.java
@@ -26,6 +26,7 @@ import org.junit.jupiter.api.Test;
import org.mvndaemon.mvnd.assertj.TestClientOutput;
import org.mvndaemon.mvnd.client.Client;
import org.mvndaemon.mvnd.client.DaemonParameters;
+import org.mvndaemon.mvnd.common.Message;
import org.mvndaemon.mvnd.junit.MvndTest;
import static org.junit.jupiter.api.Assertions.assertTrue;
@@ -48,4 +49,19 @@ class ExecOutputTest {
assertTrue(output.messagesToString()
.contains("ProjectLogMessage{projectId='exec-output',
message='[INFO] [stdout] Hello world!'}"));
}
+
+ @Test
+ void cleanTestInheritIO() throws InterruptedException {
+
+ final TestClientOutput output = new TestClientOutput();
+ client.execute(output, "clean", "test", "-e",
"-Dmvnd.log.level=DEBUG").assertSuccess();
+ assertHasTestMessage(output);
+ }
+
+ private void assertHasTestMessage(final TestClientOutput output) {
+ assertTrue(output.getMessages().stream()
+ .filter(Message.ProjectEvent.class::isInstance)
+ .map(Message.ProjectEvent.class::cast)
+ .anyMatch(it -> it.getMessage().contains("[stdout] From
test")));
+ }
}
diff --git
a/integration-tests/src/test/java/org/mvndaemon/mvnd/it/JUnitPlatformTest.java
b/integration-tests/src/test/java/org/mvndaemon/mvnd/it/JUnitPlatformTest.java
deleted file mode 100644
index 4be0c14f..00000000
---
a/integration-tests/src/test/java/org/mvndaemon/mvnd/it/JUnitPlatformTest.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.mvndaemon.mvnd.it;
-
-import javax.inject.Inject;
-
-import org.junit.jupiter.api.Test;
-import org.mvndaemon.mvnd.assertj.TestClientOutput;
-import org.mvndaemon.mvnd.client.Client;
-import org.mvndaemon.mvnd.client.DaemonParameters;
-import org.mvndaemon.mvnd.common.Message;
-import org.mvndaemon.mvnd.junit.MvndTest;
-
-import static org.junit.jupiter.api.Assertions.assertTrue;
-
-@MvndTest(projectDir = "src/test/projects/junit-platform")
-class JUnitPlatformTest {
-
- @Inject
- Client client;
-
- @Inject
- DaemonParameters parameters;
-
- @Test
- void cleanTestInheritIO() throws InterruptedException {
-
- final TestClientOutput output = new TestClientOutput();
- client.execute(output, "clean", "test", "-e",
"-Dmvnd.log.level=DEBUG").assertSuccess();
- assertHasTestMessage(output);
- }
-
- private void assertHasTestMessage(final TestClientOutput output) {
- assertTrue(output.getMessages().stream()
- .filter(Message.ProjectEvent.class::isInstance)
- .map(Message.ProjectEvent.class::cast)
- .anyMatch(it -> it.getMessage().contains("[stdout] From
test")));
- }
-}
diff --git a/integration-tests/src/test/projects/exec-output/pom.xml
b/integration-tests/src/test/projects/exec-output/pom.xml
index be3c971f..fd8c183e 100644
--- a/integration-tests/src/test/projects/exec-output/pom.xml
+++ b/integration-tests/src/test/projects/exec-output/pom.xml
@@ -93,6 +93,17 @@
</arguments>
</configuration>
</execution>
+ <execution>
+ <id>run-inherit-io</id>
+ <phase>test</phase>
+ <goals>
+ <goal>java</goal>
+ </goals>
+ <configuration>
+
<mainClass>org.mvndaemon.mvnd.test.HelloWorld</mainClass>
+ <inheritIo>true</inheritIo>
+ </configuration>
+ </execution>
</executions>
</plugin>
</plugins>
diff --git
a/integration-tests/src/test/projects/junit-platform/src/test/java/org/mvndaemon/mvnd/test/GreetingTest.java
b/integration-tests/src/test/projects/exec-output/src/main/java/org/mvndaemon/mvnd/test/HelloWorld.java
similarity index 89%
rename from
integration-tests/src/test/projects/junit-platform/src/test/java/org/mvndaemon/mvnd/test/GreetingTest.java
rename to
integration-tests/src/test/projects/exec-output/src/main/java/org/mvndaemon/mvnd/test/HelloWorld.java
index 012b2c45..f2d9e1e7 100644
---
a/integration-tests/src/test/projects/junit-platform/src/test/java/org/mvndaemon/mvnd/test/GreetingTest.java
+++
b/integration-tests/src/test/projects/exec-output/src/main/java/org/mvndaemon/mvnd/test/HelloWorld.java
@@ -15,13 +15,11 @@
*/
package org.mvndaemon.mvnd.test;
-import org.junit.jupiter.api.Test;
+public class HelloWorld {
-class GreetingTest {
-
- @Test
- void run() {
+ public static void main(String[] args) {
System.out.println("From test");
}
}
+
diff --git
a/integration-tests/src/test/projects/junit-platform/.mvn/maven.config
b/integration-tests/src/test/projects/junit-platform/.mvn/maven.config
deleted file mode 100644
index 4230c241..00000000
--- a/integration-tests/src/test/projects/junit-platform/.mvn/maven.config
+++ /dev/null
@@ -1,3 +0,0 @@
--Dmaven.wagon.httpconnectionManager.ttlSeconds=120
--Dmaven.wagon.http.retryHandler.requestSentEnabled=true
--Dmaven.wagon.http.retryHandler.count=10
diff --git a/integration-tests/src/test/projects/junit-platform/pom.xml
b/integration-tests/src/test/projects/junit-platform/pom.xml
deleted file mode 100644
index dde1875f..00000000
--- a/integration-tests/src/test/projects/junit-platform/pom.xml
+++ /dev/null
@@ -1,109 +0,0 @@
-<!--
-
- Copyright 2021 the original author or authors.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
--->
-<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://maven.apache.org/POM/4.0.0"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
-
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.mvndaemon.mvnd.test.exec-output</groupId>
- <artifactId>jp-output</artifactId>
- <version>0.0.1-SNAPSHOT</version>
- <packaging>jar</packaging>
-
- <properties>
- <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
- <maven.compiler.target>1.8</maven.compiler.target>
- <maven.compiler.source>1.8</maven.compiler.source>
-
- <maven-clean-plugin.version>3.2.0</maven-clean-plugin.version>
- <maven-compiler-plugin.version>3.10.1</maven-compiler-plugin.version>
- <maven-install-plugin.version>3.1.0</maven-install-plugin.version>
- <maven-resources-plugin.version>3.3.0</maven-resources-plugin.version>
- <maven-surefire-plugin.version>3.0.0-M8</maven-surefire-plugin.version>
- <exec-maven-plugin.version>3.1.0</exec-maven-plugin.version>
- </properties>
-
- <dependencies>
- <dependency>
- <groupId>org.junit.jupiter</groupId>
- <artifactId>junit-jupiter</artifactId>
- <version>5.7.0</version>
- <scope>test</scope>
- </dependency>
- </dependencies>
-
- <build>
- <pluginManagement>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-clean-plugin</artifactId>
- <version>${maven-clean-plugin.version}</version>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>${maven-compiler-plugin.version}</version>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-install-plugin</artifactId>
- <version>${maven-install-plugin.version}</version>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-resources-plugin</artifactId>
- <version>${maven-resources-plugin.version}</version>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <version>${maven-surefire-plugin.version}</version>
- </plugin>
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>exec-maven-plugin</artifactId>
- <version>${exec-maven-plugin.version}</version>
- </plugin>
- </plugins>
- </pluginManagement>
-
- <plugins>
- <plugin>
- <groupId>de.sormuras.junit</groupId>
- <artifactId>junit-platform-maven-plugin</artifactId>
- <version>1.1.0</version>
- <extensions>true</extensions>
- <configuration>
- <isolation>NONE</isolation>
- <executor>JAVA</executor>
- <javaOptions>
- <inheritIO>true</inheritIO>
- <additionalLauncherOptions>
-
<additionalLauncherOption>--disable-banner</additionalLauncherOption>
- </additionalLauncherOptions>
- </javaOptions>
- <tweaks>
- <failIfNoTests>false</failIfNoTests>
- <details>flat</details>
- </tweaks>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
-</project>
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 2a6cb5fd..2b6dd99e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -83,7 +83,7 @@
<groovy.version>5.0.2</groovy.version>
<jansi.version>2.4.1</jansi.version>
<jline.version>3.30.6</jline.version>
- <maven.version>4.0.0-rc-4</maven.version>
+ <maven.version>4.0.0-rc-5</maven.version>
<required-maven.version>3.9.10</required-maven.version>
<!-- Keep in sync with Maven -->