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.git


The following commit(s) were added to refs/heads/master by this push:
     new 129dc52909 Consumer POM should keep only transitive dependencies, 
fixes #11162 (#11163)
129dc52909 is described below

commit 129dc52909eac80bf99fcbf422425c201613576c
Author: Guillaume Nodet <[email protected]>
AuthorDate: Tue Sep 30 10:10:03 2025 +0200

    Consumer POM should keep only transitive dependencies, fixes #11162 (#11163)
    
    Behavior:
    - Keep only dependencies with transitive scopes 
(DependencyScope.isTransitive); null/empty treated as COMPILE
    - Use MAIN_RUNTIME for dependency collection
    - Drop all non-transitive scopes from consumer POM
---
 .../impl/DefaultConsumerPomBuilder.java            |  32 +++++++-
 its/.gitignore                                     |   1 -
 .../it/MavenITgh11162ConsumerPomScopesTest.java    |  84 +++++++++++++++++++++
 .../maven/it/MavenITmng8527ConsumerPomTest.java    |   4 +-
 .../org/apache/maven/it/TestSuiteOrdering.java     |   1 +
 .../gh-11162-consumer-pom-scopes/app/pom.xml       |  65 ++++++++++++++++
 .../resources/gh-11162-consumer-pom-scopes/pom.xml |  45 +++++++++++
 .../gh11162/compile-dep/1.0/compile-dep-1.0.jar    | Bin
 .../gh11162/compile-dep/1.0/compile-dep-1.0.pom    |   7 ++
 .../compile-only-dep/1.0/compile-only-dep-1.0.jar  | Bin
 .../compile-only-dep/1.0/compile-only-dep-1.0.pom  |   7 ++
 .../gh11162/runtime-dep/1.0/runtime-dep-1.0.jar    | Bin
 .../gh11162/runtime-dep/1.0/runtime-dep-1.0.pom    |   7 ++
 .../its/gh11162/test-dep/1.0/test-dep-1.0.jar      | Bin
 .../its/gh11162/test-dep/1.0/test-dep-1.0.pom      |   7 ++
 .../test-only-dep/1.0/test-only-dep-1.0.jar        | Bin
 .../test-only-dep/1.0/test-only-dep-1.0.pom        |   7 ++
 .../test-runtime-dep/1.0/test-runtime-dep-1.0.jar  | Bin
 .../test-runtime-dep/1.0/test-runtime-dep-1.0.pom  |   7 ++
 .../expected/simple-weather.pom                    |   8 --
 20 files changed, 268 insertions(+), 14 deletions(-)

diff --git 
a/impl/maven-core/src/main/java/org/apache/maven/internal/transformation/impl/DefaultConsumerPomBuilder.java
 
b/impl/maven-core/src/main/java/org/apache/maven/internal/transformation/impl/DefaultConsumerPomBuilder.java
index 3a17f00ed7..0cd11ffcd7 100644
--- 
a/impl/maven-core/src/main/java/org/apache/maven/internal/transformation/impl/DefaultConsumerPomBuilder.java
+++ 
b/impl/maven-core/src/main/java/org/apache/maven/internal/transformation/impl/DefaultConsumerPomBuilder.java
@@ -29,6 +29,7 @@
 import java.util.stream.Collectors;
 
 import org.apache.maven.api.ArtifactCoordinates;
+import org.apache.maven.api.DependencyScope;
 import org.apache.maven.api.Node;
 import org.apache.maven.api.PathScope;
 import org.apache.maven.api.SessionData;
@@ -114,7 +115,7 @@ private Model buildEffectiveModel(RepositorySystemSession 
session, Path src) thr
             ArtifactCoordinates artifact = iSession.createArtifactCoordinates(
                     model.getGroupId(), model.getArtifactId(), 
model.getVersion(), null);
             Node node = iSession.collectDependencies(
-                    iSession.createDependencyCoordinates(artifact), 
PathScope.TEST_RUNTIME);
+                    iSession.createDependencyCoordinates(artifact), 
PathScope.MAIN_RUNTIME);
 
             Map<String, Node> nodes = node.stream()
                     .collect(Collectors.toMap(n -> 
getDependencyKey(n.getDependency()), Function.identity()));
@@ -159,6 +160,8 @@ private Model buildEffectiveModel(RepositorySystemSession 
session, Path src) thr
                 }
                 return dependency;
             });
+            // Only keep transitive scopes (null/empty => COMPILE)
+            
directDependencies.values().removeIf(DefaultConsumerPomBuilder::hasDependencyScope);
             
managedDependencies.keySet().removeAll(directDependencies.keySet());
 
             model = model.withDependencyManagement(
@@ -166,13 +169,36 @@ private Model buildEffectiveModel(RepositorySystemSession 
session, Path src) thr
                                     ? null
                                     : 
model.getDependencyManagement().withDependencies(managedDependencies.values()))
                     .withDependencies(directDependencies.isEmpty() ? null : 
directDependencies.values());
+        } else {
+            // Even without dependencyManagement, filter direct dependencies 
to compile/runtime only
+            Map<String, Dependency> directDependencies = 
model.getDependencies().stream()
+                    .filter(dependency -> 
!"import".equals(dependency.getScope()))
+                    .collect(Collectors.toMap(
+                            DefaultConsumerPomBuilder::getDependencyKey,
+                            Function.identity(),
+                            this::merge,
+                            LinkedHashMap::new));
+            // Only keep transitive scopes
+            
directDependencies.values().removeIf(DefaultConsumerPomBuilder::hasDependencyScope);
+            model = model.withDependencies(directDependencies.isEmpty() ? null 
: directDependencies.values());
         }
 
         return model;
     }
 
+    private static boolean hasDependencyScope(Dependency dependency) {
+        String scopeId = dependency.getScope();
+        DependencyScope scope;
+        if (scopeId == null || scopeId.isEmpty()) {
+            scope = DependencyScope.COMPILE;
+        } else {
+            scope = DependencyScope.forId(scopeId);
+        }
+        return scope == null || !scope.isTransitive();
+    }
+
     private Dependency merge(Dependency dep1, Dependency dep2) {
-        throw new IllegalArgumentException("Duplicate dependency: " + dep1);
+        throw new IllegalArgumentException("Duplicate dependency: " + 
getDependencyKey(dep1));
     }
 
     private static String getDependencyKey(org.apache.maven.api.Dependency 
dependency) {
@@ -182,7 +208,7 @@ private static String 
getDependencyKey(org.apache.maven.api.Dependency dependenc
 
     private static String getDependencyKey(Dependency dependency) {
         return dependency.getGroupId() + ":" + dependency.getArtifactId() + ":"
-                + (dependency.getType() != null ? dependency.getType() : "") + 
":"
+                + (dependency.getType() != null ? dependency.getType() : 
"jar") + ":"
                 + (dependency.getClassifier() != null ? 
dependency.getClassifier() : "");
     }
 
diff --git a/its/.gitignore b/its/.gitignore
index 1e857fd68d..739842837c 100644
--- a/its/.gitignore
+++ b/its/.gitignore
@@ -1,6 +1,5 @@
 .svn
 target
-/repo
 .project
 .classpath
 .settings
diff --git 
a/its/core-it-suite/src/test/java/org/apache/maven/it/MavenITgh11162ConsumerPomScopesTest.java
 
b/its/core-it-suite/src/test/java/org/apache/maven/it/MavenITgh11162ConsumerPomScopesTest.java
new file mode 100644
index 0000000000..f7dbe71192
--- /dev/null
+++ 
b/its/core-it-suite/src/test/java/org/apache/maven/it/MavenITgh11162ConsumerPomScopesTest.java
@@ -0,0 +1,84 @@
+/*
+ * 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.apache.maven.it;
+
+import java.io.Reader;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+
+import org.apache.maven.api.model.Model;
+import org.apache.maven.model.v4.MavenStaxReader;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
+/**
+ * Verify that consumer POM keeps only "compile" and "runtime" scoped 
dependencies
+ * and drops other scopes including the new scopes introduced by Maven 4.
+ */
+class MavenITgh11162ConsumerPomScopesTest extends 
AbstractMavenIntegrationTestCase {
+
+    MavenITgh11162ConsumerPomScopesTest() {
+        super("(4.0.0-rc-3,)");
+    }
+
+    @Test
+    void testConsumerPomFiltersScopes() throws Exception {
+        Path basedir = 
extractResources("/gh-11162-consumer-pom-scopes").toPath();
+
+        Verifier verifier = newVerifier(basedir.toString());
+        verifier.addCliArgument("install");
+        verifier.execute();
+        verifier.verifyErrorFreeLog();
+
+        Path consumerPom = basedir.resolve(Paths.get(
+                "target",
+                "project-local-repo",
+                "org.apache.maven.its.gh11162",
+                "consumer-pom-scopes-app",
+                "1.0",
+                "consumer-pom-scopes-app-1.0-consumer.pom"));
+        assertTrue(Files.exists(consumerPom), "consumer pom not found at " + 
consumerPom);
+
+        Model consumerPomModel;
+        try (Reader r = Files.newBufferedReader(consumerPom)) {
+            consumerPomModel = new MavenStaxReader().read(r);
+        }
+
+        long numDeps = consumerPomModel.getDependencies() != null
+                ? consumerPomModel.getDependencies().size()
+                : 0;
+        assertEquals(2, numDeps, "Consumer POM should keep only compile and 
runtime dependencies");
+
+        boolean hasCompile = consumerPomModel.getDependencies().stream()
+                .anyMatch(d -> "compile".equals(d.getScope()) && 
"compile-dep".equals(d.getArtifactId()));
+        boolean hasRuntime = consumerPomModel.getDependencies().stream()
+                .anyMatch(d -> "runtime".equals(d.getScope()) && 
"runtime-dep".equals(d.getArtifactId()));
+        assertTrue(hasCompile, "compile dependency should be present");
+        assertTrue(hasRuntime, "runtime dependency should be present");
+
+        long dropped = consumerPomModel.getDependencies().stream()
+                .map(d -> d.getScope())
+                .filter(s -> !"compile".equals(s) && !"runtime".equals(s))
+                .count();
+        assertEquals(0, dropped, "All non compile/runtime scopes should be 
dropped in consumer POM");
+    }
+}
diff --git 
a/its/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng8527ConsumerPomTest.java
 
b/its/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng8527ConsumerPomTest.java
index f5c87152e9..2ad11b4227 100644
--- 
a/its/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng8527ConsumerPomTest.java
+++ 
b/its/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng8527ConsumerPomTest.java
@@ -70,11 +70,11 @@ void testIt() throws Exception {
                 consumerPomLines.stream().anyMatch(s -> 
s.contains("<organization>")),
                 "Consumer pom should have an <organization> element");
         assertEquals(
-                2,
+                1,
                 consumerPomLines.stream()
                         .filter(s -> s.contains("<dependency>"))
                         .count(),
-                "Consumer pom should have two dependencies");
+                "Consumer pom should have one dependency");
 
         List<String> buildPomLines;
         try (Stream<String> lines = Files.lines(buildPomPath)) {
diff --git 
a/its/core-it-suite/src/test/java/org/apache/maven/it/TestSuiteOrdering.java 
b/its/core-it-suite/src/test/java/org/apache/maven/it/TestSuiteOrdering.java
index 54f4b48328..9ecc5d4f71 100644
--- a/its/core-it-suite/src/test/java/org/apache/maven/it/TestSuiteOrdering.java
+++ b/its/core-it-suite/src/test/java/org/apache/maven/it/TestSuiteOrdering.java
@@ -103,6 +103,7 @@ public TestSuiteOrdering() {
          * the tests are to finishing. Newer tests are also more likely to 
fail, so this is
          * a fail fast technique as well.
          */
+        suite.addTestSuite(MavenITgh11162ConsumerPomScopesTest.class);
         suite.addTestSuite(MavenITgh11181CoreExtensionsMetaVersionsTest.class);
         suite.addTestSuite(MavenITmng8750NewScopesTest.class);
         suite.addTestSuite(MavenITgh11055DIServiceInjectionTest.class);
diff --git 
a/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/app/pom.xml 
b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/app/pom.xml
new file mode 100644
index 0000000000..a0198b5da9
--- /dev/null
+++ 
b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/app/pom.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.1.0";>
+  <modelVersion>4.1.0</modelVersion>
+
+  <parent>
+    <groupId>org.apache.maven.its.gh11162</groupId>
+    <artifactId>consumer-pom-scopes-parent</artifactId>
+    <version>1.0</version>
+  </parent>
+
+  <artifactId>consumer-pom-scopes-app</artifactId>
+  <packaging>jar</packaging>
+
+  <name>Maven Integration Test :: mng-8750 :: Consumer POM Scopes App</name>
+
+  <dependencies>
+    <!-- should be kept as compile -->
+    <dependency>
+      <groupId>org.apache.maven.its.gh11162</groupId>
+      <artifactId>compile-dep</artifactId>
+      <version>1.0</version>
+      <scope>compile</scope>
+    </dependency>
+
+    <!-- should be dropped (non-transitive) -->
+    <dependency>
+      <groupId>org.apache.maven.its.gh11162</groupId>
+      <artifactId>compile-only-dep</artifactId>
+      <version>1.0</version>
+      <scope>compile-only</scope>
+    </dependency>
+
+    <!-- should be dropped (non-transitive) -->
+    <dependency>
+      <groupId>org.apache.maven.its.gh11162</groupId>
+      <artifactId>test-only-dep</artifactId>
+      <version>1.0</version>
+      <scope>test-only</scope>
+    </dependency>
+
+    <!-- should be dropped (non-transitive) -->
+    <dependency>
+      <groupId>org.apache.maven.its.gh11162</groupId>
+      <artifactId>test-dep</artifactId>
+      <version>1.0</version>
+      <scope>test</scope>
+    </dependency>
+
+    <!-- should be dropped (non-compile/runtime) -->
+    <dependency>
+      <groupId>org.apache.maven.its.gh11162</groupId>
+      <artifactId>test-runtime-dep</artifactId>
+      <version>1.0</version>
+      <scope>test-runtime</scope>
+    </dependency>
+
+    <!-- should be kept as runtime -->
+    <dependency>
+      <groupId>org.apache.maven.its.gh11162</groupId>
+      <artifactId>runtime-dep</artifactId>
+      <version>1.0</version>
+      <scope>runtime</scope>
+    </dependency>
+  </dependencies>
+</project>
diff --git 
a/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/pom.xml 
b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/pom.xml
new file mode 100644
index 0000000000..cc4d20ae2a
--- /dev/null
+++ b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/pom.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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.
+-->
+<project xmlns="http://maven.apache.org/POM/4.1.0"; root="true">
+  <modelVersion>4.1.0</modelVersion>
+
+  <groupId>org.apache.maven.its.gh11162</groupId>
+  <artifactId>consumer-pom-scopes-parent</artifactId>
+  <version>1.0</version>
+  <packaging>pom</packaging>
+
+  <modules>
+    <module>app</module>
+  </modules>
+
+  <repositories>
+    <repository>
+      <releases>
+        <enabled>true</enabled>
+        <checksumPolicy>ignore</checksumPolicy>
+      </releases>
+      <snapshots>
+        <enabled>false</enabled>
+      </snapshots>
+      <id>local-test-repo</id>
+      <url>file://${project.rootDirectory}/repo</url>
+    </repository>
+  </repositories>
+</project>
diff --git 
a/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/compile-dep/1.0/compile-dep-1.0.jar
 
b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/compile-dep/1.0/compile-dep-1.0.jar
new file mode 100644
index 0000000000..e69de29bb2
diff --git 
a/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/compile-dep/1.0/compile-dep-1.0.pom
 
b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/compile-dep/1.0/compile-dep-1.0.pom
new file mode 100644
index 0000000000..10ea33e064
--- /dev/null
+++ 
b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/compile-dep/1.0/compile-dep-1.0.pom
@@ -0,0 +1,7 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0";>
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.maven.its.gh11162</groupId>
+    <artifactId>compile-only-dep</artifactId>
+    <version>1.0</version>
+    <packaging>jar</packaging>
+</project>
\ No newline at end of file
diff --git 
a/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/compile-only-dep/1.0/compile-only-dep-1.0.jar
 
b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/compile-only-dep/1.0/compile-only-dep-1.0.jar
new file mode 100644
index 0000000000..e69de29bb2
diff --git 
a/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/compile-only-dep/1.0/compile-only-dep-1.0.pom
 
b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/compile-only-dep/1.0/compile-only-dep-1.0.pom
new file mode 100644
index 0000000000..10ea33e064
--- /dev/null
+++ 
b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/compile-only-dep/1.0/compile-only-dep-1.0.pom
@@ -0,0 +1,7 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0";>
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.maven.its.gh11162</groupId>
+    <artifactId>compile-only-dep</artifactId>
+    <version>1.0</version>
+    <packaging>jar</packaging>
+</project>
\ No newline at end of file
diff --git 
a/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/runtime-dep/1.0/runtime-dep-1.0.jar
 
b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/runtime-dep/1.0/runtime-dep-1.0.jar
new file mode 100644
index 0000000000..e69de29bb2
diff --git 
a/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/runtime-dep/1.0/runtime-dep-1.0.pom
 
b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/runtime-dep/1.0/runtime-dep-1.0.pom
new file mode 100644
index 0000000000..e245f6c9b0
--- /dev/null
+++ 
b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/runtime-dep/1.0/runtime-dep-1.0.pom
@@ -0,0 +1,7 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0";>
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.maven.its.gh11162</groupId>
+    <artifactId>runtime-dep</artifactId>
+    <version>1.0</version>
+    <packaging>jar</packaging>
+</project>
\ No newline at end of file
diff --git 
a/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/test-dep/1.0/test-dep-1.0.jar
 
b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/test-dep/1.0/test-dep-1.0.jar
new file mode 100644
index 0000000000..e69de29bb2
diff --git 
a/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/test-dep/1.0/test-dep-1.0.pom
 
b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/test-dep/1.0/test-dep-1.0.pom
new file mode 100644
index 0000000000..68cd312ad2
--- /dev/null
+++ 
b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/test-dep/1.0/test-dep-1.0.pom
@@ -0,0 +1,7 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0";>
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.maven.its.gh11162</groupId>
+    <artifactId>test-dep</artifactId>
+    <version>1.0</version>
+    <packaging>jar</packaging>
+</project>
\ No newline at end of file
diff --git 
a/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/test-only-dep/1.0/test-only-dep-1.0.jar
 
b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/test-only-dep/1.0/test-only-dep-1.0.jar
new file mode 100644
index 0000000000..e69de29bb2
diff --git 
a/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/test-only-dep/1.0/test-only-dep-1.0.pom
 
b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/test-only-dep/1.0/test-only-dep-1.0.pom
new file mode 100644
index 0000000000..ee39997360
--- /dev/null
+++ 
b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/test-only-dep/1.0/test-only-dep-1.0.pom
@@ -0,0 +1,7 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0";>
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.maven.its.gh11162</groupId>
+    <artifactId>test-only-dep</artifactId>
+    <version>1.0</version>
+    <packaging>jar</packaging>
+</project>
\ No newline at end of file
diff --git 
a/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/test-runtime-dep/1.0/test-runtime-dep-1.0.jar
 
b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/test-runtime-dep/1.0/test-runtime-dep-1.0.jar
new file mode 100644
index 0000000000..e69de29bb2
diff --git 
a/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/test-runtime-dep/1.0/test-runtime-dep-1.0.pom
 
b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/test-runtime-dep/1.0/test-runtime-dep-1.0.pom
new file mode 100644
index 0000000000..5c54163b74
--- /dev/null
+++ 
b/its/core-it-suite/src/test/resources/gh-11162-consumer-pom-scopes/repo/org/apache/maven/its/gh11162/test-runtime-dep/1.0/test-runtime-dep-1.0.pom
@@ -0,0 +1,7 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0";>
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.maven.its.gh11162</groupId>
+    <artifactId>test-runtime-dep</artifactId>
+    <version>1.0</version>
+    <packaging>jar</packaging>
+</project>
\ No newline at end of file
diff --git 
a/its/core-it-suite/src/test/resources/mng-6957-buildconsumer/expected/simple-weather.pom
 
b/its/core-it-suite/src/test/resources/mng-6957-buildconsumer/expected/simple-weather.pom
index cde80acde6..3deed39a57 100644
--- 
a/its/core-it-suite/src/test/resources/mng-6957-buildconsumer/expected/simple-weather.pom
+++ 
b/its/core-it-suite/src/test/resources/mng-6957-buildconsumer/expected/simple-weather.pom
@@ -5,12 +5,4 @@
   <artifactId>simple-weather</artifactId>
   <version>0.9-MNG6957-SNAPSHOT</version>
   <name>Multi Chapter Simple Weather API</name>
-  <dependencies>
-    <dependency>
-      <groupId>org.sonatype.mavenbook.multi</groupId>
-      <artifactId>simple-testutils</artifactId>
-      <version>0.9-MNG6957-SNAPSHOT</version>
-      <scope>test</scope>
-    </dependency>
-  </dependencies>
 </project>
\ No newline at end of file

Reply via email to