[
https://issues.apache.org/jira/browse/MNG-7634?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17649479#comment-17649479
]
Michael Osipov edited comment on MNG-7634 at 12/19/22 9:38 PM:
---------------------------------------------------------------
Well, I did not fully fail. The test is flawed, badly designed. This is how it
should fail:
{noformat}
osipovmi@deblndw011x:~/var/Projekte/mit (master *=)
$ cat core-it-suite/target/test-classes/mng-4913/log.txt
[INFO] Error stacktraces are turned on.
[INFO] Scanning for projects...
[INFO]
[INFO] -----------------< org.apache.maven.its.mng4913:test >------------------
[INFO] Building Maven Integration Test :: MNG-4913 0.1
[INFO] from pom.xml
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] Downloading from central:
file:target/null/org/apache/maven/its/mng4913/b/0.1/b-0.1.pom
[INFO] Downloading from maven-core-it:
file:///var/osipovmi/Projekte/maven-integration-testing/core-it-suite/target/test-classes/mng-4913/repo/org/apache/maven/its/mng4913/b/0.1/b-0.1.pom
[INFO] Downloaded from maven-core-it:
file:///var/osipovmi/Projekte/maven-integration-testing/core-it-suite/target/test-classes/mng-4913/repo/org/apache/maven/its/mng4913/b/0.1/b-0.1.pom
(1.4 kB)
[INFO] Downloading from central:
file:target/null/org/apache/maven/its/mng4913/a/98.76/a-98.76.pom
[INFO] Downloading from maven-core-it:
file:///var/osipovmi/Projekte/maven-integration-testing/core-it-suite/target/test-classes/mng-4913/repo/org/apache/maven/its/mng4913/a/98.76/a-98.76.pom
[WARNING] The POM for org.apache.maven.its.mng4913:a:jar:98.76 is missing, no
dependency information available
[INFO] Downloading from central:
file:target/null/org/apache/maven/its/mng4913/b/0.1/b-0.1.jar
[INFO] Downloading from central:
file:target/null/org/apache/maven/its/mng4913/a/98.76/a-98.76.jar
[INFO] Downloading from maven-core-it:
file:///var/osipovmi/Projekte/maven-integration-testing/core-it-suite/target/test-classes/mng-4913/repo/org/apache/maven/its/mng4913/b/0.1/b-0.1.jar
[INFO] Downloading from maven-core-it:
file:///var/osipovmi/Projekte/maven-integration-testing/core-it-suite/target/test-classes/mng-4913/repo/org/apache/maven/its/mng4913/a/98.76/a-98.76.jar
[INFO] Downloaded from maven-core-it:
file:///var/osipovmi/Projekte/maven-integration-testing/core-it-suite/target/test-classes/mng-4913/repo/org/apache/maven/its/mng4913/b/0.1/b-0.1.jar
(2.0 kB at 2.0 MB/s)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.023 s
[INFO] Finished at: 2022-12-19T22:33:22+01:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project test: Could not resolve dependencies
for project org.apache.maven.its.mng4913:test:jar:0.1: Could not find artifact
org.apache.maven.its.mng4913:a:jar:98.76 in central (file:target/null) -> [Help
1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal
on project test: Could not resolve dependencies for project
org.apache.maven.its.mng4913:test:jar:0.1: Could not find artifact
org.apache.maven.its.mng4913:a:jar:98.76 in central (file:target/null)
at
org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.getDependencies
(LifecycleDependencyResolver.java:248)
at
org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.resolveProjectArtifacts
(LifecycleDependencyResolver.java:180)
at
org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.resolveProjectDependencies
(LifecycleDependencyResolver.java:118)
at
org.apache.maven.lifecycle.internal.MojoExecutor.ensureDependenciesAreResolved
(MojoExecutor.java:361)
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute
(MojoExecutor.java:319)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute
(MojoExecutor.java:210)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute
(MojoExecutor.java:172)
at org.apache.maven.lifecycle.internal.MojoExecutor.access$000
(MojoExecutor.java:75)
at org.apache.maven.lifecycle.internal.MojoExecutor$1.run
(MojoExecutor.java:160)
{noformat}
The first problem: {{MavenITmng4913UserPropertyVsDependencyPomPropertyTest}}
contains user property, but the code says {{verifier.setSystemProperty(
"mng4913.version", "98.76" );}}. Second problem: When run in embedded mode the
current JVM's system propeties are modified altough the ticket is about user
properties. In fork mode the "system properties" are passed as user properties
which are unfortunately promoted to system properties. Total chaos.
This is decent fix:
{noformat}
$ git diff
diff --git
a/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng4913UserPropertyVsDependencyPomPropertyTest.java
b/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng4913UserPropertyVsDependencyPomPropertyTest.java
index b948c8f43..aa80c2f53 100644
---
a/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng4913UserPropertyVsDependencyPomPropertyTest.java
+++
b/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng4913UserPropertyVsDependencyPomPropertyTest.java
@@ -56,9 +56,9 @@ public class
MavenITmng4913UserPropertyVsDependencyPomPropertyTest
verifier.setAutoclean( false );
verifier.deleteDirectory( "target" );
verifier.deleteArtifacts( "org.apache.maven.its.mng4913" );
- verifier.setSystemProperty( "mng4913.version", "98.76" );
verifier.addCliOption( "-s" );
verifier.addCliOption( "settings.xml" );
+ verifier.addCliOption( "-Dmng4913.version=98.76" );
verifier.filterFile( "settings-template.xml", "settings.xml", "UTF-8",
verifier.newDefaultFilterProperties() );
verifier.executeGoal( "validate" );
verifier.verifyErrorFreeLog();
{noformat}
was (Author: michael-o):
Well, I did not fully fail. The test is flawed, badly designed. This is how it
should fail:
{format}
osipovmi@deblndw011x:~/var/Projekte/mit (master *=)
$ cat core-it-suite/target/test-classes/mng-4913/log.txt
[INFO] Error stacktraces are turned on.
[INFO] Scanning for projects...
[INFO]
[INFO] -----------------< org.apache.maven.its.mng4913:test >------------------
[INFO] Building Maven Integration Test :: MNG-4913 0.1
[INFO] from pom.xml
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] Downloading from central:
file:target/null/org/apache/maven/its/mng4913/b/0.1/b-0.1.pom
[INFO] Downloading from maven-core-it:
file:///var/osipovmi/Projekte/maven-integration-testing/core-it-suite/target/test-classes/mng-4913/repo/org/apache/maven/its/mng4913/b/0.1/b-0.1.pom
[INFO] Downloaded from maven-core-it:
file:///var/osipovmi/Projekte/maven-integration-testing/core-it-suite/target/test-classes/mng-4913/repo/org/apache/maven/its/mng4913/b/0.1/b-0.1.pom
(1.4 kB)
[INFO] Downloading from central:
file:target/null/org/apache/maven/its/mng4913/a/98.76/a-98.76.pom
[INFO] Downloading from maven-core-it:
file:///var/osipovmi/Projekte/maven-integration-testing/core-it-suite/target/test-classes/mng-4913/repo/org/apache/maven/its/mng4913/a/98.76/a-98.76.pom
[WARNING] The POM for org.apache.maven.its.mng4913:a:jar:98.76 is missing, no
dependency information available
[INFO] Downloading from central:
file:target/null/org/apache/maven/its/mng4913/b/0.1/b-0.1.jar
[INFO] Downloading from central:
file:target/null/org/apache/maven/its/mng4913/a/98.76/a-98.76.jar
[INFO] Downloading from maven-core-it:
file:///var/osipovmi/Projekte/maven-integration-testing/core-it-suite/target/test-classes/mng-4913/repo/org/apache/maven/its/mng4913/b/0.1/b-0.1.jar
[INFO] Downloading from maven-core-it:
file:///var/osipovmi/Projekte/maven-integration-testing/core-it-suite/target/test-classes/mng-4913/repo/org/apache/maven/its/mng4913/a/98.76/a-98.76.jar
[INFO] Downloaded from maven-core-it:
file:///var/osipovmi/Projekte/maven-integration-testing/core-it-suite/target/test-classes/mng-4913/repo/org/apache/maven/its/mng4913/b/0.1/b-0.1.jar
(2.0 kB at 2.0 MB/s)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.023 s
[INFO] Finished at: 2022-12-19T22:33:22+01:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project test: Could not resolve dependencies
for project org.apache.maven.its.mng4913:test:jar:0.1: Could not find artifact
org.apache.maven.its.mng4913:a:jar:98.76 in central (file:target/null) -> [Help
1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal
on project test: Could not resolve dependencies for project
org.apache.maven.its.mng4913:test:jar:0.1: Could not find artifact
org.apache.maven.its.mng4913:a:jar:98.76 in central (file:target/null)
at
org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.getDependencies
(LifecycleDependencyResolver.java:248)
at
org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.resolveProjectArtifacts
(LifecycleDependencyResolver.java:180)
at
org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.resolveProjectDependencies
(LifecycleDependencyResolver.java:118)
at
org.apache.maven.lifecycle.internal.MojoExecutor.ensureDependenciesAreResolved
(MojoExecutor.java:361)
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute
(MojoExecutor.java:319)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute
(MojoExecutor.java:210)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute
(MojoExecutor.java:172)
at org.apache.maven.lifecycle.internal.MojoExecutor.access$000
(MojoExecutor.java:75)
at org.apache.maven.lifecycle.internal.MojoExecutor$1.run
(MojoExecutor.java:160)
{noformat}
The first problem: {{MavenITmng4913UserPropertyVsDependencyPomPropertyTest}}
contains user property, but the code says {{verifier.setSystemProperty(
"mng4913.version", "98.76" );}}. Second problem: When run in embedded mode the
current JVM's system propeties are modified altough the ticket is about user
properties. In fork mode the "system properties" are passed as user properties
which are unfortunately promoted to system properties. Total chaos.
This is decent fix:
{noformat}
$ git diff
diff --git
a/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng4913UserPropertyVsDependencyPomPropertyTest.java
b/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng4913UserPropertyVsDependencyPomPropertyTest.java
index b948c8f43..aa80c2f53 100644
---
a/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng4913UserPropertyVsDependencyPomPropertyTest.java
+++
b/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng4913UserPropertyVsDependencyPomPropertyTest.java
@@ -56,9 +56,9 @@ public class
MavenITmng4913UserPropertyVsDependencyPomPropertyTest
verifier.setAutoclean( false );
verifier.deleteDirectory( "target" );
verifier.deleteArtifacts( "org.apache.maven.its.mng4913" );
- verifier.setSystemProperty( "mng4913.version", "98.76" );
verifier.addCliOption( "-s" );
verifier.addCliOption( "settings.xml" );
+ verifier.addCliOption( "-Dmng4913.version=98.76" );
verifier.filterFile( "settings-template.xml", "settings.xml", "UTF-8",
verifier.newDefaultFilterProperties() );
verifier.executeGoal( "validate" );
verifier.verifyErrorFreeLog();
{noformat}
> Revert MNG-5982 and MNG-7417
> ----------------------------
>
> Key: MNG-7634
> URL: https://issues.apache.org/jira/browse/MNG-7634
> Project: Maven
> Issue Type: Task
> Reporter: Michael Osipov
> Assignee: Michael Osipov
> Priority: Major
> Fix For: 3.9.0, 4.0.0, 4.0.0-alpha-4, 3.8.7
>
>
> As layed out in MNG-7563, both issues though solve one problem, but cause a
> regression where direct user input manipulates dependency POMs in a way which
> is not clear/documented as such. As long as we cannot properly understand and
> document it, we must revert those changes.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)