diff --git a/.github/workflows/maven-verify.yml b/.github/workflows/maven-verify.yml
index 4d67fdcf9..6b3f50f41 100644
--- a/.github/workflows/maven-verify.yml
+++ b/.github/workflows/maven-verify.yml
@@ -25,3 +25,5 @@ jobs:
build:
name: Verify
uses: apache/maven-gh-actions-shared/.github/workflows/maven-verify.yml@v3
+ with:
+ maven-matrix: '[ "3.9.2", "4.0.0-alpha-5" ]'
\ No newline at end of file
diff --git a/maven-release-api/src/main/java/org/apache/maven/shared/release/config/ReleaseDescriptor.java b/maven-release-api/src/main/java/org/apache/maven/shared/release/config/ReleaseDescriptor.java
index ed653c746..976a0f569 100644
--- a/maven-release-api/src/main/java/org/apache/maven/shared/release/config/ReleaseDescriptor.java
+++ b/maven-release-api/src/main/java/org/apache/maven/shared/release/config/ReleaseDescriptor.java
@@ -426,7 +426,7 @@ public interface ReleaseDescriptor {
/**
* Get the (optional) config for the VersionPolicy implementation used to calculate the project versions.
*
- * @return The parsed XML of the provided config (an instance of XmlPlexusConfiguration) or null.
+ * @return The parsed XML of the provided config (an instance of PlexusConfiguration) or null.
*/
Object getProjectVersionPolicyConfig();
diff --git a/maven-release-manager/pom.xml b/maven-release-manager/pom.xml
index 2424b1a0f..788446e8e 100644
--- a/maven-release-manager/pom.xml
+++ b/maven-release-manager/pom.xml
@@ -148,7 +148,7 @@
org.apache.maven.shared
maven-shared-utils
- 3.4.1
+ 3.4.2-SNAPSHOT
diff --git a/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/GenerateReleasePomsPhase.java b/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/GenerateReleasePomsPhase.java
index af4dd4624..1261b2547 100644
--- a/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/GenerateReleasePomsPhase.java
+++ b/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/GenerateReleasePomsPhase.java
@@ -543,9 +543,10 @@ private List createReleasePlugins(ReleaseDescriptor releaseDescriptor, M
}
releasePlugin.setExecutions(plugin.getExecutions());
releasePlugin.setDependencies(plugin.getDependencies());
- releasePlugin.setGoals(plugin.getGoals());
releasePlugin.setInherited(plugin.getInherited());
- releasePlugin.setConfiguration(plugin.getConfiguration());
+ if (plugin.getConfiguration() != null) {
+ releasePlugin.setConfiguration(plugin.getConfiguration());
+ }
releasePlugins.add(releasePlugin);
}
diff --git a/maven-release-plugin/pom.xml b/maven-release-plugin/pom.xml
index 7fa64ef0e..3cda4db19 100644
--- a/maven-release-plugin/pom.xml
+++ b/maven-release-plugin/pom.xml
@@ -209,6 +209,7 @@
org.apache.maven.plugins
maven-invoker-plugin
+ 3.5.1
src/it
${project.build.directory}/it
diff --git a/maven-release-plugin/src/it/projects/branch/MRELEASE-458/pom.xml b/maven-release-plugin/src/it/projects/branch/MRELEASE-458/pom.xml
index 1dbd1b2a1..c3573b4bb 100644
--- a/maven-release-plugin/src/it/projects/branch/MRELEASE-458/pom.xml
+++ b/maven-release-plugin/src/it/projects/branch/MRELEASE-458/pom.xml
@@ -61,6 +61,7 @@
maven-release-plugin
+ @project.version@
false
true
diff --git a/maven-release-plugin/src/it/projects/branch/MRELEASE-694/verify.groovy b/maven-release-plugin/src/it/projects/branch/MRELEASE-694/verify.groovy
index 8d7f901c8..663166f1a 100644
--- a/maven-release-plugin/src/it/projects/branch/MRELEASE-694/verify.groovy
+++ b/maven-release-plugin/src/it/projects/branch/MRELEASE-694/verify.groovy
@@ -18,6 +18,8 @@
* under the License.
*/
+import groovy.xml.XmlSlurper
+
def projectBranch = new XmlSlurper().parse( new File( basedir, "pom.xml.branch" ) )
assert projectBranch.version.text() == "2.6.0-BRANCH-SNAPSHOT"
diff --git a/maven-release-plugin/src/it/projects/branch/MRELEASE-745/pom.xml b/maven-release-plugin/src/it/projects/branch/MRELEASE-745/pom.xml
index 4fe5757b9..c0fb1e5d3 100644
--- a/maven-release-plugin/src/it/projects/branch/MRELEASE-745/pom.xml
+++ b/maven-release-plugin/src/it/projects/branch/MRELEASE-745/pom.xml
@@ -31,6 +31,8 @@
maven-release-plugin
+
+ 2.5.3
true
branch-mrelease-745
diff --git a/maven-release-plugin/src/it/projects/branch/MRELEASE-976/verify.groovy b/maven-release-plugin/src/it/projects/branch/MRELEASE-976/verify.groovy
index 04ff692a3..b7de67c33 100644
--- a/maven-release-plugin/src/it/projects/branch/MRELEASE-976/verify.groovy
+++ b/maven-release-plugin/src/it/projects/branch/MRELEASE-976/verify.groovy
@@ -18,6 +18,8 @@
* under the License.
*/
+import groovy.xml.XmlSlurper
+
def project = new XmlSlurper().parse( new File( basedir, "pom.xml" ) )
assert project.version.text() == "1.0-SNAPSHOT"
diff --git a/maven-release-plugin/src/it/projects/perform/MRELEASE-592/pom.xml b/maven-release-plugin/src/it/projects/perform/MRELEASE-592/pom.xml
index 77e304eaf..3149cb965 100644
--- a/maven-release-plugin/src/it/projects/perform/MRELEASE-592/pom.xml
+++ b/maven-release-plugin/src/it/projects/perform/MRELEASE-592/pom.xml
@@ -66,7 +66,7 @@
org.apache.maven.plugins
maven-enforcer-plugin
- 1.1.1
+ 3.3.0
enforce
@@ -94,7 +94,7 @@
org.apache.maven.plugins
maven-enforcer-plugin
- 1.1.1
+ 3.3.0
enforce
diff --git a/maven-release-plugin/src/it/projects/prepare/MRELEASE-1053/verify.groovy b/maven-release-plugin/src/it/projects/prepare/MRELEASE-1053/verify.groovy
index f496ed480..e12d0e578 100644
--- a/maven-release-plugin/src/it/projects/prepare/MRELEASE-1053/verify.groovy
+++ b/maven-release-plugin/src/it/projects/prepare/MRELEASE-1053/verify.groovy
@@ -17,6 +17,8 @@
* under the License.
*/
+import groovy.xml.XmlSlurper
+
// check parent project
def project = new XmlSlurper().parse( new File( new File ( basedir, 'module-parent' ), 'pom.xml.next' ) )
assert project.version.text() == '1.1-SNAPSHOT'
diff --git a/maven-release-plugin/src/it/projects/prepare/MRELEASE-1077/pom.xml b/maven-release-plugin/src/it/projects/prepare/MRELEASE-1077/pom.xml
index 807c401d6..90142c5c9 100644
--- a/maven-release-plugin/src/it/projects/prepare/MRELEASE-1077/pom.xml
+++ b/maven-release-plugin/src/it/projects/prepare/MRELEASE-1077/pom.xml
@@ -51,7 +51,7 @@
org.apache.maven.plugins
maven-help-plugin
- 3.3.0
+ 3.4.0
Show profiles
diff --git a/maven-release-plugin/src/it/projects/prepare/MRELEASE-1077/verify.groovy b/maven-release-plugin/src/it/projects/prepare/MRELEASE-1077/verify.groovy
index a0e52dc92..563380f88 100644
--- a/maven-release-plugin/src/it/projects/prepare/MRELEASE-1077/verify.groovy
+++ b/maven-release-plugin/src/it/projects/prepare/MRELEASE-1077/verify.groovy
@@ -20,5 +20,5 @@
File buildLog = new File( basedir, 'build.log' )
assert buildLog.exists()
-assert buildLog.text.contains( "[INFO] - PrepProfA (source: org.apache.maven.plugin.release.its:mrelease-1077:1.0-SNAPSHOT)")
-assert buildLog.text.contains( "[INFO] - PrepProfB (source: org.apache.maven.plugin.release.its:mrelease-1077:1.0-SNAPSHOT)")
+assert buildLog.text.contains( "[INFO] - PrepProfA (source: ")
+assert buildLog.text.contains( "[INFO] - PrepProfB (source: ")
diff --git a/maven-release-plugin/src/it/projects/prepare/MRELEASE-161-dependencyManagement/verify.groovy b/maven-release-plugin/src/it/projects/prepare/MRELEASE-161-dependencyManagement/verify.groovy
index ec4071365..f978353ee 100644
--- a/maven-release-plugin/src/it/projects/prepare/MRELEASE-161-dependencyManagement/verify.groovy
+++ b/maven-release-plugin/src/it/projects/prepare/MRELEASE-161-dependencyManagement/verify.groovy
@@ -18,6 +18,9 @@
* under the License.
*/
+import groovy.xml.XmlSlurper
+
+
File buildLog = new File( basedir, 'build.log' )
assert buildLog.exists()
diff --git a/maven-release-plugin/src/it/projects/prepare/MRELEASE-161/verify.groovy b/maven-release-plugin/src/it/projects/prepare/MRELEASE-161/verify.groovy
index 3718c5488..137070997 100644
--- a/maven-release-plugin/src/it/projects/prepare/MRELEASE-161/verify.groovy
+++ b/maven-release-plugin/src/it/projects/prepare/MRELEASE-161/verify.groovy
@@ -18,6 +18,8 @@
* under the License.
*/
+import groovy.xml.XmlSlurper
+
File buildLog = new File( basedir, 'build.log' )
assert buildLog.exists()
diff --git a/maven-release-plugin/src/it/projects/prepare/MRELEASE-571_M3/module1/pom.xml b/maven-release-plugin/src/it/projects/prepare/MRELEASE-571_M3/module1/pom.xml
index 902a69ae2..60dd7444a 100644
--- a/maven-release-plugin/src/it/projects/prepare/MRELEASE-571_M3/module1/pom.xml
+++ b/maven-release-plugin/src/it/projects/prepare/MRELEASE-571_M3/module1/pom.xml
@@ -40,7 +40,7 @@ under the License.
org.apache.maven.plugins
maven-enforcer-plugin
- 1.0.1
+ 3.3.0
@@ -64,7 +64,7 @@ under the License.
org.apache.maven.plugins
maven-enforcer-plugin
- 1.0.1
+ 3.3.0
diff --git a/maven-release-plugin/src/it/projects/prepare/MRELEASE-667/pom.xml b/maven-release-plugin/src/it/projects/prepare/MRELEASE-667/pom.xml
index 216c5555c..b3c43b3c3 100644
--- a/maven-release-plugin/src/it/projects/prepare/MRELEASE-667/pom.xml
+++ b/maven-release-plugin/src/it/projects/prepare/MRELEASE-667/pom.xml
@@ -37,14 +37,14 @@
- -Prelease,!mrelease-677 ${arguments}
+ -P!mrelease-677 ${arguments}
help:all-profiles
org.apache.maven.plugins
maven-help-plugin
- 2.1.1
+ 3.4.0
diff --git a/maven-release-plugin/src/it/projects/prepare/MRELEASE-667/verify.groovy b/maven-release-plugin/src/it/projects/prepare/MRELEASE-667/verify.groovy
index bd42e6d58..215d58ef9 100644
--- a/maven-release-plugin/src/it/projects/prepare/MRELEASE-667/verify.groovy
+++ b/maven-release-plugin/src/it/projects/prepare/MRELEASE-667/verify.groovy
@@ -24,5 +24,5 @@ assert buildLog.exists()
// Can only be checked with M3
//assert 1 == buildLog.getText().count("[DEBUG] Profile with id: 'mrelease-677' has been explicitly activated.")
-assert 1 == buildLog.getText().count(" Profile Id: mrelease-677 (Active: false , Source: settings.xml)")
+assert 1 == buildLog.getText().count(" Profile Id: mrelease-677 (Active: false, Source: settings.xml)")
assert buildLog.getText().contains("[WARNING] arguments parameter contains unresolved property: '\${arguments}'")
diff --git a/maven-release-plugin/src/it/projects/prepare/MRELEASE-976/verify.groovy b/maven-release-plugin/src/it/projects/prepare/MRELEASE-976/verify.groovy
index 1a947573f..bd1a9e415 100644
--- a/maven-release-plugin/src/it/projects/prepare/MRELEASE-976/verify.groovy
+++ b/maven-release-plugin/src/it/projects/prepare/MRELEASE-976/verify.groovy
@@ -18,6 +18,8 @@
* under the License.
*/
+import groovy.xml.XmlSlurper
+
def project = new XmlSlurper().parse( new File( basedir, "pom.xml" ) )
assert project.version.text() == "1.0-SNAPSHOT"
diff --git a/maven-release-plugin/src/it/projects/prepare/MRELEASE-985/verify.groovy b/maven-release-plugin/src/it/projects/prepare/MRELEASE-985/verify.groovy
index 4e05fc8f7..bbd0de781 100644
--- a/maven-release-plugin/src/it/projects/prepare/MRELEASE-985/verify.groovy
+++ b/maven-release-plugin/src/it/projects/prepare/MRELEASE-985/verify.groovy
@@ -18,6 +18,8 @@
* under the License.
*/
+import groovy.xml.XmlSlurper
+
def project = new XmlSlurper().parse( new File( basedir, "pom.xml" ) )
assert project.version.text() == "1.0-SNAPSHOT"
assert project.parent.version.text() == "1-SNAPSHOT"
diff --git a/maven-release-plugin/src/it/projects/prepare/namespace/verify.groovy b/maven-release-plugin/src/it/projects/prepare/namespace/verify.groovy
index da22596b3..b7aff067b 100644
--- a/maven-release-plugin/src/it/projects/prepare/namespace/verify.groovy
+++ b/maven-release-plugin/src/it/projects/prepare/namespace/verify.groovy
@@ -17,6 +17,8 @@
* under the License.
*/
+import groovy.xml.XmlSlurper
+
def project = new XmlSlurper().parse( new File( basedir, "pom.xml" ) )
assert project['@xsi:schemaLocation'] == "http://maven.apache.org/POM/4.0.0 https://maven.apache.org/maven-v4_0_0.xsd"
diff --git a/maven-release-plugin/src/it/projects/prepare/version-policy/verify.groovy b/maven-release-plugin/src/it/projects/prepare/version-policy/verify.groovy
index 9426c2a6d..f80703a54 100644
--- a/maven-release-plugin/src/it/projects/prepare/version-policy/verify.groovy
+++ b/maven-release-plugin/src/it/projects/prepare/version-policy/verify.groovy
@@ -17,6 +17,8 @@
* under the License.
*/
+import groovy.xml.XmlSlurper
+
File buildLog = new File( basedir, 'build.log' )
assert buildLog.exists()
diff --git a/maven-release-plugin/src/it/projects/update-versions/MRELEASE-555/verify.groovy b/maven-release-plugin/src/it/projects/update-versions/MRELEASE-555/verify.groovy
index e1d930373..e1a034c0c 100644
--- a/maven-release-plugin/src/it/projects/update-versions/MRELEASE-555/verify.groovy
+++ b/maven-release-plugin/src/it/projects/update-versions/MRELEASE-555/verify.groovy
@@ -18,6 +18,8 @@
* under the License.
*/
+import groovy.xml.XmlSlurper
+
File buildLog = new File( basedir, 'build.log' )
assert buildLog.exists()
diff --git a/maven-release-plugin/src/it/projects/update-versions/MRELEASE-611/verify.groovy b/maven-release-plugin/src/it/projects/update-versions/MRELEASE-611/verify.groovy
index 369c62546..46b1bd0dd 100644
--- a/maven-release-plugin/src/it/projects/update-versions/MRELEASE-611/verify.groovy
+++ b/maven-release-plugin/src/it/projects/update-versions/MRELEASE-611/verify.groovy
@@ -18,6 +18,8 @@
* under the License.
*/
+import groovy.xml.XmlSlurper
+
File buildLog = new File( basedir, 'build.log' )
assert buildLog.exists()
diff --git a/maven-release-plugin/src/it/projects/update-versions/MRELEASE-976/verify.groovy b/maven-release-plugin/src/it/projects/update-versions/MRELEASE-976/verify.groovy
index 350012e31..7691e43dc 100644
--- a/maven-release-plugin/src/it/projects/update-versions/MRELEASE-976/verify.groovy
+++ b/maven-release-plugin/src/it/projects/update-versions/MRELEASE-976/verify.groovy
@@ -18,6 +18,8 @@
* under the License.
*/
+import groovy.xml.XmlSlurper
+
// verifies that the version is unchanged because of the custom policy: 1.0-SNAPSHOT -> 1.0 -> 1.0-SNAPSHOT
def project = new XmlSlurper().parse( new File( basedir, "pom.xml" ) )
assert project.version.text() == "1.0-SNAPSHOT"
diff --git a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/BranchReleaseMojo.java b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/BranchReleaseMojo.java
index b9d50628a..db314c4b0 100644
--- a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/BranchReleaseMojo.java
+++ b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/BranchReleaseMojo.java
@@ -29,7 +29,7 @@
import org.apache.maven.shared.release.ReleaseExecutionException;
import org.apache.maven.shared.release.ReleaseFailureException;
import org.apache.maven.shared.release.config.ReleaseDescriptorBuilder;
-import org.codehaus.plexus.configuration.xml.XmlPlexusConfiguration;
+import org.codehaus.plexus.configuration.PlexusConfiguration;
/**
* Branch a project in SCM, using the same steps as the release:prepare
goal, creating a branch instead of
@@ -204,7 +204,7 @@ public class BranchReleaseMojo extends AbstractScmReleaseMojo {
* @since 3.0.0
*/
@Parameter(property = "projectVersionPolicyConfig")
- private XmlPlexusConfiguration projectVersionPolicyConfig;
+ private PlexusConfiguration projectVersionPolicyConfig;
/**
* The role-hint for the {@link org.apache.maven.shared.release.policy.naming.NamingPolicy}
diff --git a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java
index ff2bb8d87..58a4cc354 100644
--- a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java
+++ b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java
@@ -33,7 +33,7 @@
import org.apache.maven.shared.release.ReleaseFailureException;
import org.apache.maven.shared.release.ReleasePrepareRequest;
import org.apache.maven.shared.release.config.ReleaseDescriptorBuilder;
-import org.codehaus.plexus.configuration.xml.XmlPlexusConfiguration;
+import org.codehaus.plexus.configuration.PlexusConfiguration;
/**
* Prepare for a release in SCM. Steps through several phases to ensure the POM is ready to be released and then
@@ -250,7 +250,7 @@ public class PrepareReleaseMojo extends AbstractScmReleaseMojo {
* @since 3.0.0
*/
@Parameter(property = "projectVersionPolicyConfig")
- private XmlPlexusConfiguration projectVersionPolicyConfig;
+ private PlexusConfiguration projectVersionPolicyConfig;
/**
* The role-hint for the {@link org.apache.maven.shared.release.policy.naming.NamingPolicy}
diff --git a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/UpdateVersionsMojo.java b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/UpdateVersionsMojo.java
index 253cf1b50..caf9acd93 100644
--- a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/UpdateVersionsMojo.java
+++ b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/UpdateVersionsMojo.java
@@ -28,7 +28,7 @@
import org.apache.maven.shared.release.ReleaseFailureException;
import org.apache.maven.shared.release.ReleaseUpdateVersionsRequest;
import org.apache.maven.shared.release.config.ReleaseDescriptorBuilder;
-import org.codehaus.plexus.configuration.xml.XmlPlexusConfiguration;
+import org.codehaus.plexus.configuration.PlexusConfiguration;
/**
* Update the POM versions for a project. This performs the normal version updates of the release:prepare
@@ -97,7 +97,7 @@ public class UpdateVersionsMojo extends AbstractReleaseMojo {
* @since 3.0.0
*/
@Parameter(property = "projectVersionPolicyConfig")
- private XmlPlexusConfiguration projectVersionPolicyConfig;
+ private PlexusConfiguration projectVersionPolicyConfig;
@Override
public void execute() throws MojoExecutionException, MojoFailureException {