This is an automated email from the ASF dual-hosted git repository. kwin pushed a commit to branch feature/override-user-properties in repository https://gitbox.apache.org/repos/asf/maven-surefire.git
commit 865e46d567c184c49652e1a63b2d44edfb24a7b5 Author: Konrad Windszus <konrad.winds...@netcentric.biz> AuthorDate: Mon Jul 15 15:03:20 2024 +0200 [SUREFIRE-1385] Add new parameter "userPropertyVariables" to overwrite user properties Log overwritten properties Clarify effective properties merging order --- maven-failsafe-plugin/pom.xml | 2 +- maven-surefire-common/pom.xml | 2 +- .../plugin/surefire/AbstractSurefireMojo.java | 95 ++++++++++++++++++++-- .../maven/plugin/surefire/SurefireProperties.java | 57 +++++++------ maven-surefire-plugin/pom.xml | 2 +- maven-surefire-report-plugin/pom.xml | 2 +- pom.xml | 4 +- surefire-api/pom.xml | 2 +- surefire-booter/pom.xml | 2 +- surefire-extensions-api/pom.xml | 2 +- surefire-extensions-spi/pom.xml | 2 +- surefire-grouper/pom.xml | 2 +- surefire-its/pom.xml | 2 +- surefire-logger-api/pom.xml | 2 +- surefire-providers/common-java5/pom.xml | 2 +- surefire-providers/common-junit3/pom.xml | 2 +- surefire-providers/common-junit4/pom.xml | 2 +- surefire-providers/common-junit48/pom.xml | 2 +- surefire-providers/pom.xml | 2 +- surefire-providers/surefire-junit-platform/pom.xml | 2 +- surefire-providers/surefire-junit3/pom.xml | 2 +- surefire-providers/surefire-junit4/pom.xml | 2 +- surefire-providers/surefire-junit47/pom.xml | 2 +- surefire-providers/surefire-testng-utils/pom.xml | 2 +- surefire-providers/surefire-testng/pom.xml | 2 +- surefire-report-parser/pom.xml | 2 +- surefire-shadefire/pom.xml | 2 +- surefire-shared-utils/pom.xml | 2 +- 28 files changed, 145 insertions(+), 61 deletions(-) diff --git a/maven-failsafe-plugin/pom.xml b/maven-failsafe-plugin/pom.xml index 3a464997d..e83d8d9cf 100644 --- a/maven-failsafe-plugin/pom.xml +++ b/maven-failsafe-plugin/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <groupId>org.apache.maven.plugins</groupId> diff --git a/maven-surefire-common/pom.xml b/maven-surefire-common/pom.xml index de13d9831..bba8dfddc 100644 --- a/maven-surefire-common/pom.xml +++ b/maven-surefire-common/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>maven-surefire-common</artifactId> diff --git a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/AbstractSurefireMojo.java b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/AbstractSurefireMojo.java index 47d691a13..9150e535c 100644 --- a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/AbstractSurefireMojo.java +++ b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/AbstractSurefireMojo.java @@ -24,6 +24,7 @@ import java.io.File; import java.io.IOException; import java.math.BigDecimal; import java.nio.file.Files; +import java.text.ChoiceFormat; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; @@ -325,13 +326,25 @@ public abstract class AbstractSurefireMojo extends AbstractMojo implements Suref * List of System properties to pass to a provider. * The effective system properties given to a provider are contributed from several sources: * <ol> + * <li>properties set via {@link #argLine} with {@code -D} (only for forked executions)</li> * <li>{@link #systemProperties}</li> * <li>{@link AbstractSurefireMojo#getSystemPropertiesFile()} (set via parameter {@code systemPropertiesFile} on some goals)</li> * <li>{@link #systemPropertyVariables}</li> - * <li>User properties from {@link MavenSession#getUserProperties()}, usually set via CLI options given with {@code -D}</li> + * <li>User properties from {@link MavenSession#getUserProperties()}, usually set via CLI options given with {@code -D} on the current Maven process</li> + * <li>{@link #userPropertyVariables}</li> * </ol> * Later sources may overwrite same named properties from earlier sources, that means for example that one cannot overwrite user properties with either - * {@link #systemProperties}, {@link AbstractSurefireMojo#getSystemPropertiesFile()} or {@link #systemPropertyVariables}. + * {@link #systemProperties}, {@link #getSystemPropertiesFile()} or {@link #systemPropertyVariables} but only with + * {@link #userPropertyVariables}. + * <p> + * Certain properties may only be overwritten via {@link #argLine} (applicable only for forked executions) because their values are cached and only evaluated at the start of the JRE. + * Those include: + * <ul> + * <li>{@code java.library.path}</li> + * <li>{@code file.encoding}</li> + * <li>{@code jdk.map.althashing.threshold}</li> + * <li>{@code line.separator}</li> + * </ul> * * @since 2.5 * @see #systemProperties @@ -339,6 +352,18 @@ public abstract class AbstractSurefireMojo extends AbstractMojo implements Suref @Parameter private Map<String, String> systemPropertyVariables; + /** + * List of user properties to pass to a provider. + * Similar to {@link #systemPropertyVariables} but having a higher precedence, therefore allows to overwrite user properties from the current Maven session. + * This should only be used in case a user property from the parent process needs to be explicitly overwritten. + * Regular properties should be set via {@link #systemPropertyVariables} instead in order to allow them to be overwritten + * via CLI arguments ({@code -Dmyproperty=myvalue}) + * @since 3.4 + * @see #systemPropertyVariables + */ + @Parameter + private Map<String, String> userPropertyVariables; + /** * List of properties for configuring the testing provider. This is the preferred method of * configuring TestNG and JUnit platform providers.<br><br> @@ -425,7 +450,7 @@ public abstract class AbstractSurefireMojo extends AbstractMojo implements Suref private String jvm; /** - * Arbitrary JVM options to set on the command line. + * Arbitrary JVM options to set on the command line. Only effective for forked executions. * <br> * <br> * Since the Version 2.17 using an alternate syntax for {@code argLine}, <b>@{...}</b> allows late replacement @@ -438,6 +463,7 @@ public abstract class AbstractSurefireMojo extends AbstractMojo implements Suref * <a href="http://maven.apache.org/surefire/maven-failsafe-plugin/faq.html"> * http://maven.apache.org/surefire/maven-failsafe-plugin/faq.html</a> * + * @see #forkCount * @since 2.1 */ @Parameter(property = "argLine") @@ -1140,9 +1166,9 @@ public abstract class AbstractSurefireMojo extends AbstractMojo implements Suref } private SurefireProperties setupProperties() { - SurefireProperties sysProps = null; + SurefireProperties sysPropsFromFile = null; try { - sysProps = SurefireProperties.loadProperties(getSystemPropertiesFile()); + sysPropsFromFile = SurefireProperties.loadProperties(getSystemPropertiesFile()); } catch (IOException e) { String msg = "The file '" + getSystemPropertiesFile().getAbsolutePath() + "' can't be read."; if (getConsoleLogger().isDebugEnabled()) { @@ -1152,8 +1178,12 @@ public abstract class AbstractSurefireMojo extends AbstractMojo implements Suref } } - SurefireProperties result = SurefireProperties.calculateEffectiveProperties( - getSystemProperties(), getSystemPropertyVariables(), getUserProperties(), sysProps); + SurefireProperties result = calculateEffectiveProperties( + getSystemProperties(), + getSystemPropertyVariables(), + getUserProperties(), + userPropertyVariables, + sysPropsFromFile); result.setProperty("basedir", getBasedir().getAbsolutePath()); result.setProperty("localRepository", getLocalRepositoryPath()); @@ -1184,6 +1214,43 @@ public abstract class AbstractSurefireMojo extends AbstractMojo implements Suref return result; } + private SurefireProperties calculateEffectiveProperties( + Properties systemProperties, + Map<String, String> systemPropertyVariables, + Properties userProperties, + Map<String, String> userPropertyVariables, + SurefireProperties sysPropsFromFile) { + SurefireProperties result = new SurefireProperties(); + result.copyPropertiesFrom(systemProperties); + + Collection<String> overwrittenProperties = result.copyPropertiesFrom(sysPropsFromFile); + if (!overwrittenProperties.isEmpty()) { + getConsoleLogger().debug(getOverwrittenPropertiesLogMessage(overwrittenProperties, "sysPropsFile")); + } + overwrittenProperties = result.copyPropertiesFrom(systemPropertyVariables); + if (!overwrittenProperties.isEmpty()) { + getConsoleLogger() + .debug(getOverwrittenPropertiesLogMessage(overwrittenProperties, "systemPropertyVariables")); + } + // We used to take all of our system properties and dump them in with the + // user specified properties for SUREFIRE-121, causing SUREFIRE-491. + // Not gonna do THAT any more... instead, we only propagate those system properties + // that have been explicitly specified by the user via -Dkey=value on the CLI + + overwrittenProperties = result.copyPropertiesFrom(userProperties); + if (!overwrittenProperties.isEmpty()) { + getConsoleLogger() + .warning(getOverwrittenPropertiesLogMessage( + overwrittenProperties, "user properties from Maven session")); + } + overwrittenProperties = result.copyPropertiesFrom(userPropertyVariables); + if (!overwrittenProperties.isEmpty()) { + getConsoleLogger() + .warning(getOverwrittenPropertiesLogMessage(overwrittenProperties, "userPropertyVariables")); + } + return result; + } + private Set<Object> systemPropertiesMatchingArgLine(SurefireProperties result) { Set<Object> intersection = new HashSet<>(); if (isNotBlank(getArgLine())) { @@ -1199,6 +1266,20 @@ public abstract class AbstractSurefireMojo extends AbstractMojo implements Suref return intersection; } + private String getOverwrittenPropertiesLogMessage( + Collection<String> overwrittenProperties, String overwrittenBySource) { + if (overwrittenProperties.isEmpty()) { + throw new IllegalArgumentException("overwrittenProperties must not be empty"); + } + // one or multiple? + ChoiceFormat propertyChoice = new ChoiceFormat("1#property|1>properties"); + StringBuilder message = new StringBuilder("System "); + message.append(propertyChoice.format(overwrittenProperties.size())).append(" "); + message.append(overwrittenProperties.stream().collect(Collectors.joining("], [", "[", "]"))); + message.append(" overwritten by ").append(overwrittenBySource); + return message.toString(); + } + private void showToLog(SurefireProperties props, ConsoleLogger log) { for (Object key : props.getStringKeySet()) { String value = props.getProperty((String) key); diff --git a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/SurefireProperties.java b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/SurefireProperties.java index 96e3cdaef..2971e7450 100644 --- a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/SurefireProperties.java +++ b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/SurefireProperties.java @@ -27,6 +27,7 @@ import java.util.Collections; import java.util.Enumeration; import java.util.HashSet; import java.util.LinkedHashSet; +import java.util.LinkedList; import java.util.List; import java.util.Map; import java.util.Properties; @@ -40,7 +41,7 @@ import static java.util.Arrays.asList; import static java.util.Map.Entry; /** - * A properties implementation that preserves insertion order. + * A {@link Properties} implementation that preserves insertion order. */ public class SurefireProperties extends Properties implements KeyValueSource { private static final Collection<String> KEYS_THAT_CANNOT_BE_USED_AS_SYSTEM_PROPERTIES = @@ -64,9 +65,17 @@ public class SurefireProperties extends Properties implements KeyValueSource { @Override public synchronized void putAll(Map<?, ?> t) { + putAllInternal(t); + } + + private Collection<String> putAllInternal(Map<?, ?> t) { + Collection<String> overwrittenProperties = new LinkedList<>(); for (Entry<?, ?> entry : t.entrySet()) { - put(entry.getKey(), entry.getValue()); + if (put(entry.getKey(), entry.getValue()) != null) { + overwrittenProperties.add(entry.getKey().toString()); + } } + return overwrittenProperties; } @Override @@ -92,12 +101,23 @@ public class SurefireProperties extends Properties implements KeyValueSource { return Collections.enumeration(items); } - public void copyPropertiesFrom(Properties source) { + /** + * Copies all keys and values from source to these properties, overwriting existing properties with same name + * @param source + * @return all overwritten property names (may be empty if there was property name clash) + */ + public Collection<String> copyPropertiesFrom(Properties source) { if (source != null) { - putAll(source); + return putAllInternal(source); + } else { + return Collections.emptyList(); } } + public Collection<String> copyPropertiesFrom(Map<String, String> source) { + return copyProperties(this, source); + } + public Iterable<Object> getStringKeySet() { return keySet(); } @@ -121,34 +141,17 @@ public class SurefireProperties extends Properties implements KeyValueSource { } } - static SurefireProperties calculateEffectiveProperties( - Properties systemProperties, - Map<String, String> systemPropertyVariables, - Properties userProperties, - SurefireProperties props) { - SurefireProperties result = new SurefireProperties(); - result.copyPropertiesFrom(systemProperties); - - result.copyPropertiesFrom(props); - - copyProperties(result, systemPropertyVariables); - - // We used to take all of our system properties and dump them in with the - // user specified properties for SUREFIRE-121, causing SUREFIRE-491. - // Not gonna do THAT any more... instead, we only propagate those system properties - // that have been explicitly specified by the user via -Dkey=value on the CLI - - result.copyPropertiesFrom(userProperties); - return result; - } - - private static void copyProperties(Properties target, Map<String, String> source) { + private static Collection<String> copyProperties(Properties target, Map<String, String> source) { + Collection<String> overwrittenProperties = new LinkedList<>(); if (source != null) { for (String key : source.keySet()) { String value = source.get(key); - target.setProperty(key, value == null ? "" : value); + if (target.setProperty(key, value == null ? "" : value) != null) { + overwrittenProperties.add(key); + } } } + return overwrittenProperties; } @Override diff --git a/maven-surefire-plugin/pom.xml b/maven-surefire-plugin/pom.xml index 71de0eff6..7c2b63e35 100644 --- a/maven-surefire-plugin/pom.xml +++ b/maven-surefire-plugin/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <groupId>org.apache.maven.plugins</groupId> diff --git a/maven-surefire-report-plugin/pom.xml b/maven-surefire-report-plugin/pom.xml index 9f6a406e4..474b73ece 100644 --- a/maven-surefire-report-plugin/pom.xml +++ b/maven-surefire-report-plugin/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <groupId>org.apache.maven.plugins</groupId> diff --git a/pom.xml b/pom.xml index 973111484..abdd74189 100644 --- a/pom.xml +++ b/pom.xml @@ -28,7 +28,7 @@ <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> <packaging>pom</packaging> <name>Apache Maven Surefire</name> @@ -106,7 +106,7 @@ <maven.compiler.testTarget>1.${javaVersion}</maven.compiler.testTarget> <jvm9ArgsTests /> <jvm.args.tests>${jvm9ArgsTests} -Xms32m -Xmx144m -XX:SoftRefLRUPolicyMSPerMB=50 -Djava.awt.headless=true -Djdk.net.URLClassPath.disableClassPathURLCheck=true</jvm.args.tests> - <project.build.outputTimestamp>2024-07-07T17:48:17Z</project.build.outputTimestamp> + <project.build.outputTimestamp>2024-07-15T13:01:03Z</project.build.outputTimestamp> </properties> <dependencyManagement> diff --git a/surefire-api/pom.xml b/surefire-api/pom.xml index 0f4f767d6..b36676c3e 100644 --- a/surefire-api/pom.xml +++ b/surefire-api/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>surefire-api</artifactId> diff --git a/surefire-booter/pom.xml b/surefire-booter/pom.xml index bfb637475..d256834b3 100644 --- a/surefire-booter/pom.xml +++ b/surefire-booter/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>surefire-booter</artifactId> diff --git a/surefire-extensions-api/pom.xml b/surefire-extensions-api/pom.xml index 9017bdfa6..9dbb677e2 100644 --- a/surefire-extensions-api/pom.xml +++ b/surefire-extensions-api/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>surefire-extensions-api</artifactId> diff --git a/surefire-extensions-spi/pom.xml b/surefire-extensions-spi/pom.xml index 32ecf4b51..c072b3d4b 100644 --- a/surefire-extensions-spi/pom.xml +++ b/surefire-extensions-spi/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>surefire-extensions-spi</artifactId> diff --git a/surefire-grouper/pom.xml b/surefire-grouper/pom.xml index 9e625f1f1..50cb33193 100644 --- a/surefire-grouper/pom.xml +++ b/surefire-grouper/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>surefire-grouper</artifactId> diff --git a/surefire-its/pom.xml b/surefire-its/pom.xml index 8d18714f1..2559d357d 100644 --- a/surefire-its/pom.xml +++ b/surefire-its/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>surefire-its</artifactId> diff --git a/surefire-logger-api/pom.xml b/surefire-logger-api/pom.xml index 84593953d..92f44bb46 100644 --- a/surefire-logger-api/pom.xml +++ b/surefire-logger-api/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>surefire-logger-api</artifactId> diff --git a/surefire-providers/common-java5/pom.xml b/surefire-providers/common-java5/pom.xml index 39fcc6647..98d63fbc6 100644 --- a/surefire-providers/common-java5/pom.xml +++ b/surefire-providers/common-java5/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire-providers</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>common-java5</artifactId> diff --git a/surefire-providers/common-junit3/pom.xml b/surefire-providers/common-junit3/pom.xml index 17eb8b22d..8fa9e5464 100644 --- a/surefire-providers/common-junit3/pom.xml +++ b/surefire-providers/common-junit3/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire-providers</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>common-junit3</artifactId> diff --git a/surefire-providers/common-junit4/pom.xml b/surefire-providers/common-junit4/pom.xml index f66db5849..0ef6fc660 100644 --- a/surefire-providers/common-junit4/pom.xml +++ b/surefire-providers/common-junit4/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire-providers</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>common-junit4</artifactId> diff --git a/surefire-providers/common-junit48/pom.xml b/surefire-providers/common-junit48/pom.xml index a223dcbd0..ce3ba24ce 100644 --- a/surefire-providers/common-junit48/pom.xml +++ b/surefire-providers/common-junit48/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire-providers</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>common-junit48</artifactId> diff --git a/surefire-providers/pom.xml b/surefire-providers/pom.xml index c030e6703..eff68a63c 100644 --- a/surefire-providers/pom.xml +++ b/surefire-providers/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>surefire-providers</artifactId> diff --git a/surefire-providers/surefire-junit-platform/pom.xml b/surefire-providers/surefire-junit-platform/pom.xml index 66bb62dc9..09011343f 100644 --- a/surefire-providers/surefire-junit-platform/pom.xml +++ b/surefire-providers/surefire-junit-platform/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire-providers</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>surefire-junit-platform</artifactId> diff --git a/surefire-providers/surefire-junit3/pom.xml b/surefire-providers/surefire-junit3/pom.xml index ab337b748..7505164cb 100644 --- a/surefire-providers/surefire-junit3/pom.xml +++ b/surefire-providers/surefire-junit3/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire-providers</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>surefire-junit3</artifactId> diff --git a/surefire-providers/surefire-junit4/pom.xml b/surefire-providers/surefire-junit4/pom.xml index 898cf569b..194b93a7f 100644 --- a/surefire-providers/surefire-junit4/pom.xml +++ b/surefire-providers/surefire-junit4/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire-providers</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>surefire-junit4</artifactId> diff --git a/surefire-providers/surefire-junit47/pom.xml b/surefire-providers/surefire-junit47/pom.xml index 45ee17904..d6d6c1b64 100644 --- a/surefire-providers/surefire-junit47/pom.xml +++ b/surefire-providers/surefire-junit47/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire-providers</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>surefire-junit47</artifactId> diff --git a/surefire-providers/surefire-testng-utils/pom.xml b/surefire-providers/surefire-testng-utils/pom.xml index 27c7ced49..5e1777e8f 100644 --- a/surefire-providers/surefire-testng-utils/pom.xml +++ b/surefire-providers/surefire-testng-utils/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire-providers</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>surefire-testng-utils</artifactId> diff --git a/surefire-providers/surefire-testng/pom.xml b/surefire-providers/surefire-testng/pom.xml index db4d31371..d99d636c7 100644 --- a/surefire-providers/surefire-testng/pom.xml +++ b/surefire-providers/surefire-testng/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire-providers</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>surefire-testng</artifactId> diff --git a/surefire-report-parser/pom.xml b/surefire-report-parser/pom.xml index 609031a51..eb6d511d3 100644 --- a/surefire-report-parser/pom.xml +++ b/surefire-report-parser/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>surefire-report-parser</artifactId> diff --git a/surefire-shadefire/pom.xml b/surefire-shadefire/pom.xml index cf6f3d3bf..2afbe11ef 100644 --- a/surefire-shadefire/pom.xml +++ b/surefire-shadefire/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>surefire-shadefire</artifactId> diff --git a/surefire-shared-utils/pom.xml b/surefire-shared-utils/pom.xml index 33077c7a0..17cb31719 100644 --- a/surefire-shared-utils/pom.xml +++ b/surefire-shared-utils/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.maven.surefire</groupId> <artifactId>surefire</artifactId> - <version>3.3.2-SNAPSHOT</version> + <version>3.4.0-SNAPSHOT</version> </parent> <artifactId>surefire-shared-utils</artifactId>