Skip to content

Commit

Permalink
[MPIR-416] Upgrade maven-dependency-tree to 3.1.0
Browse files Browse the repository at this point in the history
  • Loading branch information
slawekjaranowski committed Apr 23, 2022
1 parent eab4f24 commit 9549763
Show file tree
Hide file tree
Showing 6 changed files with 53 additions and 36 deletions.
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -188,7 +188,7 @@ under the License.
<dependency>
<groupId>org.apache.maven.shared</groupId>
<artifactId>maven-dependency-tree</artifactId>
<version>2.2</version>
<version>3.1.0</version>
</dependency>
<dependency>
<groupId>org.apache.maven.shared</groupId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -189,7 +189,10 @@ private DependencyNode resolveProject()
try
{
ArtifactFilter artifactFilter = new ScopeArtifactFilter( Artifact.SCOPE_TEST );
return dependencyGraphBuilder.buildDependencyGraph( project, artifactFilter );
ProjectBuildingRequest buildingRequest =
new DefaultProjectBuildingRequest( getSession().getProjectBuildingRequest() );
buildingRequest.setProject( project );
return dependencyGraphBuilder.buildDependencyGraph( buildingRequest, artifactFilter );
}
catch ( DependencyGraphBuilderException e )
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,17 +47,17 @@
import org.apache.maven.report.projectinfo.dependencies.SinkSerializingDependencyNodeVisitor;
import org.apache.maven.reporting.MavenReportException;
import org.apache.maven.shared.artifact.filter.StrictPatternIncludesArtifactFilter;
import org.apache.maven.shared.dependency.tree.DependencyTreeBuilder;
import org.apache.maven.shared.dependency.tree.DependencyNode;
import org.apache.maven.shared.dependency.tree.DependencyTreeBuilderException;
import org.apache.maven.shared.dependency.tree.filter.AncestorOrSelfDependencyNodeFilter;
import org.apache.maven.shared.dependency.tree.filter.AndDependencyNodeFilter;
import org.apache.maven.shared.dependency.tree.filter.ArtifactDependencyNodeFilter;
import org.apache.maven.shared.dependency.tree.filter.DependencyNodeFilter;
import org.apache.maven.shared.dependency.tree.traversal.BuildingDependencyNodeVisitor;
import org.apache.maven.shared.dependency.tree.traversal.CollectingDependencyNodeVisitor;
import org.apache.maven.shared.dependency.tree.traversal.DependencyNodeVisitor;
import org.apache.maven.shared.dependency.tree.traversal.FilteringDependencyNodeVisitor;
import org.apache.maven.shared.dependency.graph.DependencyCollectorBuilder;
import org.apache.maven.shared.dependency.graph.DependencyCollectorBuilderException;
import org.apache.maven.shared.dependency.graph.DependencyNode;
import org.apache.maven.shared.dependency.graph.filter.AncestorOrSelfDependencyNodeFilter;
import org.apache.maven.shared.dependency.graph.filter.AndDependencyNodeFilter;
import org.apache.maven.shared.dependency.graph.filter.ArtifactDependencyNodeFilter;
import org.apache.maven.shared.dependency.graph.filter.DependencyNodeFilter;
import org.apache.maven.shared.dependency.graph.traversal.BuildingDependencyNodeVisitor;
import org.apache.maven.shared.dependency.graph.traversal.CollectingDependencyNodeVisitor;
import org.apache.maven.shared.dependency.graph.traversal.DependencyNodeVisitor;
import org.apache.maven.shared.dependency.graph.traversal.FilteringDependencyNodeVisitor;

/**
* Generates the Project Dependency Convergence report for (reactor) builds.
Expand All @@ -71,10 +71,14 @@
public class DependencyConvergenceReport
extends AbstractProjectInfoReport
{
/** URL for the 'icon_success_sml.gif' image */
/**
* URL for the 'icon_success_sml.gif' image
*/
private static final String IMG_SUCCESS_URL = "images/icon_success_sml.gif";

/** URL for the 'icon_error_sml.gif' image */
/**
* URL for the 'icon_error_sml.gif' image
*/
private static final String IMG_ERROR_URL = "images/icon_error_sml.gif";

private static final int FULL_CONVERGENCE = 100;
Expand All @@ -84,10 +88,10 @@ public class DependencyConvergenceReport
// ----------------------------------------------------------------------

/**
* Dependency tree builder, will use it to build dependency tree.
* Raw dependency collector builder, will use it to build dependency tree.
*/
@Component
private DependencyTreeBuilder dependencyTreeBuilder;
private DependencyCollectorBuilder dependencyCollectorBuilder;

private ArtifactFilter filter = null;

Expand All @@ -97,7 +101,9 @@ public class DependencyConvergenceReport
// Public methods
// ----------------------------------------------------------------------

/** {@inheritDoc} */
/**
* {@inheritDoc}
*/
public String getOutputName()
{
return "dependency-convergence";
Expand Down Expand Up @@ -188,7 +194,7 @@ protected void executeReport( Locale locale )
* @return snapshots dependencies
*/
private List<ReverseDependencyLink> getSnapshotDependencies(
Map<String, List<ReverseDependencyLink>> dependencyMap )
Map<String, List<ReverseDependencyLink>> dependencyMap )
{
List<ReverseDependencyLink> snapshots = new ArrayList<>();
for ( Map.Entry<String, List<ReverseDependencyLink>> entry : dependencyMap.entrySet() )
Expand Down Expand Up @@ -338,7 +344,7 @@ private void generateDependencyDetails( Locale locale, Sink sink, List<ReverseDe
* @param version
*/
private void generateVersionDetails( Sink sink, Map<String, List<ReverseDependencyLink>> artifactMap,
String version )
String version )
{
sink.numberedList( 0 ); // Use lower alpha numbering
List<ReverseDependencyLink> depList = artifactMap.get( version );
Expand Down Expand Up @@ -423,7 +429,7 @@ private void serializeDependencyTree( DependencyNode rootNode, String key, Sink
{
CollectingDependencyNodeVisitor collectingVisitor = new CollectingDependencyNodeVisitor();
DependencyNodeVisitor firstPassVisitor = new FilteringDependencyNodeVisitor(
collectingVisitor, nodeFilter );
collectingVisitor, nodeFilter );
rootNode.accept( firstPassVisitor );

DependencyNodeFilter secondPassFilter =
Expand Down Expand Up @@ -722,7 +728,7 @@ private void iconError( Locale locale, Sink sink )
* </pre>
*
* @return DependencyAnalyzeResult contains conflicting dependencies map, snapshot dependencies map and all
* dependencies map.
* dependencies map.
* @throws MavenReportException
*/
private DependencyAnalyzeResult analyzeDependencyTree()
Expand Down Expand Up @@ -756,11 +762,11 @@ private DependencyAnalyzeResult analyzeDependencyTree()
* @param conflictingDependencyMap
* @param allDependencies
* @return DependencyAnalyzeResult contains conflicting dependencies map, snapshot dependencies map and all
* dependencies map.
* dependencies map.
*/
private DependencyAnalyzeResult populateDependencyAnalyzeResult(
Map<String, List<ReverseDependencyLink>> conflictingDependencyMap,
Map<String, List<ReverseDependencyLink>> allDependencies )
Map<String, List<ReverseDependencyLink>> conflictingDependencyMap,
Map<String, List<ReverseDependencyLink>> allDependencies )
{
DependencyAnalyzeResult dependencyResult = new DependencyAnalyzeResult();

Expand Down Expand Up @@ -800,12 +806,12 @@ private void getConflictingDependencyMap( Map<String, List<ReverseDependencyLink
}

dependencyList.add( new ReverseDependencyLink(
toDependency( dependencyNode.getArtifact() ), reactorProject ) );
toDependency( dependencyNode.getArtifact() ), reactorProject ) );

for ( DependencyNode workNode : nodes.subList( 1, nodes.size() ) )
{
dependencyList.add( new ReverseDependencyLink(
toDependency( workNode.getArtifact() ), reactorProject ) );
toDependency( workNode.getArtifact() ), reactorProject ) );
}

conflictingDependencyMap.put( key, dependencyList );
Expand Down Expand Up @@ -896,9 +902,9 @@ private DependencyNode getNode( ProjectBuildingRequest buildingRequest )
{
try
{
return dependencyTreeBuilder.buildDependencyTree( buildingRequest.getProject(), localRepository, filter );
return dependencyCollectorBuilder.collectDependencyGraph( buildingRequest, filter );
}
catch ( DependencyTreeBuilderException e )
catch ( DependencyCollectorBuilderException e )
{
throw new MavenReportException( "Could not build dependency tree: " + e.getMessage(), e );
}
Expand Down Expand Up @@ -932,7 +938,7 @@ private Set<Artifact> getAllDescendants( DependencyNode node )
private int calculateConvergence( DependencyAnalyzeResult result )
{
return (int) ( ( (double) result.getDependencyCount()
/ (double) result.getArtifactCount() ) * FULL_CONVERGENCE );
/ (double) result.getArtifactCount() ) * FULL_CONVERGENCE );
}

/**
Expand Down Expand Up @@ -973,7 +979,9 @@ public String toString()
static class DependencyNodeComparator
implements Comparator<DependencyNode>
{
/** {@inheritDoc} */
/**
* {@inheritDoc}
*/
public int compare( DependencyNode p1, DependencyNode p2 )
{
return p1.getArtifact().getId().compareTo( p2.getArtifact().getId() );
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@
import java.util.Map;

import org.apache.maven.artifact.Artifact;
import org.apache.maven.shared.dependency.tree.DependencyNode;
import org.apache.maven.shared.dependency.tree.traversal.DependencyNodeVisitor;
import org.apache.maven.shared.dependency.graph.DependencyNode;
import org.apache.maven.shared.dependency.graph.traversal.DependencyNodeVisitor;

/**
* @author Simon Wang
Expand Down Expand Up @@ -161,4 +161,4 @@ private boolean containsConflicts( List<DependencyNode> nodes )
return false;
}

}
}
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,8 @@
import java.util.List;

import org.apache.maven.doxia.sink.Sink;
import org.apache.maven.shared.dependency.tree.DependencyNode;
import org.apache.maven.shared.dependency.tree.traversal.DependencyNodeVisitor;
import org.apache.maven.shared.dependency.graph.DependencyNode;
import org.apache.maven.shared.dependency.graph.traversal.DependencyNodeVisitor;

/**
* A dependency node visitor that serializes visited nodes to a sink writer. It's used to serialize tree in project
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -120,4 +120,10 @@ public void setArtifactHandler( ArtifactHandler handler )
{
this.handler = handler;
}

@Override
public String getType()
{
return "";
}
}

0 comments on commit 9549763

Please sign in to comment.