[jira] [Commented] (MSHARED-1016) Transitive provided dependencies are not removed from collected dependency graph
[ https://issues.apache.org/jira/browse/MSHARED-1016?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17562246#comment-17562246 ] Hudson commented on MSHARED-1016: - Build succeeded in Jenkins: Maven » Maven TLP » maven-dependency-tree » master #17 See https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven-dependency-tree/job/master/17/ > Transitive provided dependencies are not removed from collected dependency > graph > > > Key: MSHARED-1016 > URL: https://issues.apache.org/jira/browse/MSHARED-1016 > Project: Maven Shared Components > Issue Type: Bug > Components: maven-dependency-tree >Affects Versions: maven-dependency-tree-3.1.0 >Reporter: Daniel Norberg >Assignee: Slawomir Jaranowski >Priority: Major > Fix For: maven-dependency-tree-next-release > > > DependencyCollectorBuilder#collectDependencyGraph returns a dependency graph > containing transitive provided scope dependencies. This is inconsistent with > Maven behavior, which removes transitive provided scope dependencies from the > dependency graph: > [https://github.com/apache/maven/blob/706d9319f14b507f3c3deeba4eeda1a51a531c9b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemUtils.java#L80|https://github.com/apache/maven/blob/706d9319f14b507f3c3deeba4eeda1a51a531c9b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemUtils.java#L80.] > This might be the root cause of > https://issues.apache.org/jira/browse/MENFORCER-402 and > https://issues.apache.org/jira/browse/MENFORCER-394 > Note that transitive test scope dependencies are correctly filtered out using > a dependency selector. > It seems to me that we can add another dependency selector to also filter out > transitive provided scope dependencies: > [https://github.com/apache/maven-dependency-tree/blob/7a1a12533ac6898fcb3dacbcf2466ef71d11c43a/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven31DependencyCollectorBuilder.java#L108|https://github.com/apache/maven-dependency-tree/blob/master/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven31DependencyCollectorBuilder.java#L108] > [https://github.com/apache/maven-dependency-tree/blob/7a1a12533ac6898fcb3dacbcf2466ef71d11c43a/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven3DependencyCollectorBuilder.java#L108] > I have submitted a PR to do this: > [https://github.com/apache/maven-dependency-tree/pull/9] > > > > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (MSHARED-1016) Transitive provided dependencies are not removed from collected dependency graph
[ https://issues.apache.org/jira/browse/MSHARED-1016?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17561900#comment-17561900 ] Hudson commented on MSHARED-1016: - Build succeeded in Jenkins: Maven » Maven TLP » maven-dependency-tree » master #16 See https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven-dependency-tree/job/master/16/ > Transitive provided dependencies are not removed from collected dependency > graph > > > Key: MSHARED-1016 > URL: https://issues.apache.org/jira/browse/MSHARED-1016 > Project: Maven Shared Components > Issue Type: Bug > Components: maven-dependency-tree >Affects Versions: maven-dependency-tree-3.1.0 >Reporter: Daniel Norberg >Assignee: Slawomir Jaranowski >Priority: Major > Fix For: maven-dependency-tree-next-release > > > DependencyCollectorBuilder#collectDependencyGraph returns a dependency graph > containing transitive provided scope dependencies. This is inconsistent with > Maven behavior, which removes transitive provided scope dependencies from the > dependency graph: > [https://github.com/apache/maven/blob/706d9319f14b507f3c3deeba4eeda1a51a531c9b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemUtils.java#L80|https://github.com/apache/maven/blob/706d9319f14b507f3c3deeba4eeda1a51a531c9b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemUtils.java#L80.] > This might be the root cause of > https://issues.apache.org/jira/browse/MENFORCER-402 and > https://issues.apache.org/jira/browse/MENFORCER-394 > Note that transitive test scope dependencies are correctly filtered out using > a dependency selector. > It seems to me that we can add another dependency selector to also filter out > transitive provided scope dependencies: > [https://github.com/apache/maven-dependency-tree/blob/7a1a12533ac6898fcb3dacbcf2466ef71d11c43a/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven31DependencyCollectorBuilder.java#L108|https://github.com/apache/maven-dependency-tree/blob/master/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven31DependencyCollectorBuilder.java#L108] > [https://github.com/apache/maven-dependency-tree/blob/7a1a12533ac6898fcb3dacbcf2466ef71d11c43a/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven3DependencyCollectorBuilder.java#L108] > I have submitted a PR to do this: > [https://github.com/apache/maven-dependency-tree/pull/9] > > > > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (MSHARED-1016) Transitive provided dependencies are not removed from collected dependency graph
[ https://issues.apache.org/jira/browse/MSHARED-1016?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17555700#comment-17555700 ] Slawomir Jaranowski commented on MSHARED-1016: -- [~cstamas] I must agree with [~danielnorberg] dependency-tree should do job in the same way as Maven core does. > Transitive provided dependencies are not removed from collected dependency > graph > > > Key: MSHARED-1016 > URL: https://issues.apache.org/jira/browse/MSHARED-1016 > Project: Maven Shared Components > Issue Type: Bug > Components: maven-dependency-tree >Affects Versions: maven-dependency-tree-3.1.0 >Reporter: Daniel Norberg >Priority: Major > > DependencyCollectorBuilder#collectDependencyGraph returns a dependency graph > containing transitive provided scope dependencies. This is inconsistent with > Maven behavior, which removes transitive provided scope dependencies from the > dependency graph: > [https://github.com/apache/maven/blob/706d9319f14b507f3c3deeba4eeda1a51a531c9b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemUtils.java#L80|https://github.com/apache/maven/blob/706d9319f14b507f3c3deeba4eeda1a51a531c9b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemUtils.java#L80.] > This might be the root cause of > https://issues.apache.org/jira/browse/MENFORCER-402 and > https://issues.apache.org/jira/browse/MENFORCER-394 > Note that transitive test scope dependencies are correctly filtered out using > a dependency selector. > It seems to me that we can add another dependency selector to also filter out > transitive provided scope dependencies: > [https://github.com/apache/maven-dependency-tree/blob/7a1a12533ac6898fcb3dacbcf2466ef71d11c43a/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven31DependencyCollectorBuilder.java#L108|https://github.com/apache/maven-dependency-tree/blob/master/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven31DependencyCollectorBuilder.java#L108] > [https://github.com/apache/maven-dependency-tree/blob/7a1a12533ac6898fcb3dacbcf2466ef71d11c43a/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven3DependencyCollectorBuilder.java#L108] > I have submitted a PR to do this: > [https://github.com/apache/maven-dependency-tree/pull/9] > > > > -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (MSHARED-1016) Transitive provided dependencies are not removed from collected dependency graph
[ https://issues.apache.org/jira/browse/MSHARED-1016?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17554312#comment-17554312 ] Daniel Norberg commented on MSHARED-1016: - Maven removes "provided" dependencies from the graph using the ScopeDependencySelector as seen here [https://github.com/apache/maven/blob/706d9319f14b507f3c3deeba4eeda1a51a531c9b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemUtils.java#L80.] This component is used by maven-enforcer which exhibits issues https://issues.apache.org/jira/browse/MENFORCER-402 and https://issues.apache.org/jira/browse/MENFORCER-394 which I believe to be due to this issue. > Transitive provided dependencies are not removed from collected dependency > graph > > > Key: MSHARED-1016 > URL: https://issues.apache.org/jira/browse/MSHARED-1016 > Project: Maven Shared Components > Issue Type: Bug > Components: maven-dependency-tree >Affects Versions: maven-dependency-tree-3.1.0 >Reporter: Daniel Norberg >Priority: Major > > DependencyCollectorBuilder#collectDependencyGraph returns a dependency graph > containing transitive provided scope dependencies. This is inconsistent with > Maven behavior, which removes transitive provided scope dependencies from the > dependency graph: > [https://github.com/apache/maven/blob/706d9319f14b507f3c3deeba4eeda1a51a531c9b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemUtils.java#L80|https://github.com/apache/maven/blob/706d9319f14b507f3c3deeba4eeda1a51a531c9b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemUtils.java#L80.] > This might be the root cause of > https://issues.apache.org/jira/browse/MENFORCER-402 and > https://issues.apache.org/jira/browse/MENFORCER-394 > Note that transitive test scope dependencies are correctly filtered out using > a dependency selector. > It seems to me that we can add another dependency selector to also filter out > transitive provided scope dependencies: > [https://github.com/apache/maven-dependency-tree/blob/7a1a12533ac6898fcb3dacbcf2466ef71d11c43a/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven31DependencyCollectorBuilder.java#L108|https://github.com/apache/maven-dependency-tree/blob/master/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven31DependencyCollectorBuilder.java#L108] > [https://github.com/apache/maven-dependency-tree/blob/7a1a12533ac6898fcb3dacbcf2466ef71d11c43a/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven3DependencyCollectorBuilder.java#L108] > I have submitted a PR to do this: > [https://github.com/apache/maven-dependency-tree/pull/9] > > > > -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (MSHARED-1016) Transitive provided dependencies are not removed from collected dependency graph
[ https://issues.apache.org/jira/browse/MSHARED-1016?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17528218#comment-17528218 ] Tamás Cservenák commented on MSHARED-1016: -- PR and your assumption is wrong. Also, what you think Maven does is wrong as well. The *collect* step collects everything, even in Maven itself, easy to check: Create a project P that depends on dependency A that depends on dependency B. Then, in project P add an exclusion to B where dependency A declared. And use empty local repository. You will see, that maven WILL download B POM even if excluded! That's exactly for that above: collect builds a full graph of "everything". Later a post processing of graph happens, where these nodes are cut away. So, maybe some post processing is missing instead for you as well? The proposed PR would "functionally cripple" the dep-tree, and one who needs full graph would not be able to get it anymore Anyway, if you look at this discussion [https://github.com/apache/maven-dependency-tree/pull/10] you will see this whole API is about to change Where or in what use case you use this component? > Transitive provided dependencies are not removed from collected dependency > graph > > > Key: MSHARED-1016 > URL: https://issues.apache.org/jira/browse/MSHARED-1016 > Project: Maven Shared Components > Issue Type: Bug > Components: maven-dependency-tree >Affects Versions: maven-dependency-tree-3.1.0 >Reporter: Daniel Norberg >Priority: Major > > DependencyCollectorBuilder#collectDependencyGraph returns a dependency graph > containing transitive provided scope dependencies. This is inconsistent with > Maven behavior, which removes transitive provided scope dependencies from the > dependency graph: > [https://github.com/apache/maven/blob/706d9319f14b507f3c3deeba4eeda1a51a531c9b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemUtils.java#L80|https://github.com/apache/maven/blob/706d9319f14b507f3c3deeba4eeda1a51a531c9b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemUtils.java#L80.] > This might be the root cause of > https://issues.apache.org/jira/browse/MENFORCER-402 and > https://issues.apache.org/jira/browse/MENFORCER-394 > Note that transitive test scope dependencies are correctly filtered out using > a dependency selector. > It seems to me that we can add another dependency selector to also filter out > transitive provided scope dependencies: > [https://github.com/apache/maven-dependency-tree/blob/7a1a12533ac6898fcb3dacbcf2466ef71d11c43a/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven31DependencyCollectorBuilder.java#L108|https://github.com/apache/maven-dependency-tree/blob/master/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven31DependencyCollectorBuilder.java#L108] > [https://github.com/apache/maven-dependency-tree/blob/7a1a12533ac6898fcb3dacbcf2466ef71d11c43a/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven3DependencyCollectorBuilder.java#L108] > I have submitted a PR to do this: > [https://github.com/apache/maven-dependency-tree/pull/9] > > > > -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (MSHARED-1016) Transitive provided dependencies are not removed from collected dependency graph
[ https://issues.apache.org/jira/browse/MSHARED-1016?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17528033#comment-17528033 ] Robert Scholte commented on MSHARED-1016: - [~cstamas] is quite active with this topic lately, so I'd prefer him to have a look at it and judge if your assumption is correct. You should consider to add a test to confirm this fix and to prevent regression in the future. > Transitive provided dependencies are not removed from collected dependency > graph > > > Key: MSHARED-1016 > URL: https://issues.apache.org/jira/browse/MSHARED-1016 > Project: Maven Shared Components > Issue Type: Bug > Components: maven-dependency-tree >Affects Versions: maven-dependency-tree-3.1.0 >Reporter: Daniel Norberg >Priority: Major > > DependencyCollectorBuilder#collectDependencyGraph returns a dependency graph > containing transitive provided scope dependencies. This is inconsistent with > Maven behavior, which removes transitive provided scope dependencies from the > dependency graph: > [https://github.com/apache/maven/blob/706d9319f14b507f3c3deeba4eeda1a51a531c9b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemUtils.java#L80|https://github.com/apache/maven/blob/706d9319f14b507f3c3deeba4eeda1a51a531c9b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemUtils.java#L80.] > This might be the root cause of > https://issues.apache.org/jira/browse/MENFORCER-402 and > https://issues.apache.org/jira/browse/MENFORCER-394 > Note that transitive test scope dependencies are correctly filtered out using > a dependency selector. > It seems to me that we can add another dependency selector to also filter out > transitive provided scope dependencies: > [https://github.com/apache/maven-dependency-tree/blob/7a1a12533ac6898fcb3dacbcf2466ef71d11c43a/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven31DependencyCollectorBuilder.java#L108|https://github.com/apache/maven-dependency-tree/blob/master/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven31DependencyCollectorBuilder.java#L108] > [https://github.com/apache/maven-dependency-tree/blob/7a1a12533ac6898fcb3dacbcf2466ef71d11c43a/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven3DependencyCollectorBuilder.java#L108] > I have submitted a PR to do this: > [https://github.com/apache/maven-dependency-tree/pull/9] > > > > -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (MSHARED-1016) Transitive provided dependencies are not removed from collected dependency graph
[ https://issues.apache.org/jira/browse/MSHARED-1016?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17527769#comment-17527769 ] Daniel Norberg commented on MSHARED-1016: - [~rfscholte] would you be able to take a look at this? > Transitive provided dependencies are not removed from collected dependency > graph > > > Key: MSHARED-1016 > URL: https://issues.apache.org/jira/browse/MSHARED-1016 > Project: Maven Shared Components > Issue Type: Bug > Components: maven-dependency-tree >Affects Versions: maven-dependency-tree-3.1.0 >Reporter: Daniel Norberg >Priority: Major > > DependencyCollectorBuilder#collectDependencyGraph returns a dependency graph > containing transitive provided scope dependencies. This is inconsistent with > Maven behavior, which removes transitive provided scope dependencies from the > dependency graph: > [https://github.com/apache/maven/blob/706d9319f14b507f3c3deeba4eeda1a51a531c9b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemUtils.java#L80|https://github.com/apache/maven/blob/706d9319f14b507f3c3deeba4eeda1a51a531c9b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemUtils.java#L80.] > This might be the root cause of > https://issues.apache.org/jira/browse/MENFORCER-402 and > https://issues.apache.org/jira/browse/MENFORCER-394 > Note that transitive test scope dependencies are correctly filtered out using > a dependency selector. > It seems to me that we can add another dependency selector to also filter out > transitive provided scope dependencies: > [https://github.com/apache/maven-dependency-tree/blob/7a1a12533ac6898fcb3dacbcf2466ef71d11c43a/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven31DependencyCollectorBuilder.java#L108|https://github.com/apache/maven-dependency-tree/blob/master/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven31DependencyCollectorBuilder.java#L108] > [https://github.com/apache/maven-dependency-tree/blob/7a1a12533ac6898fcb3dacbcf2466ef71d11c43a/src/main/java/org/apache/maven/shared/dependency/graph/internal/Maven3DependencyCollectorBuilder.java#L108] > I have submitted a PR to do this: > [https://github.com/apache/maven-dependency-tree/pull/9] > > > > -- This message was sent by Atlassian Jira (v8.20.7#820007)