This is an automated email from the ASF dual-hosted git repository.

cstamas pushed a commit to branch tmp-collect-listener
in repository https://gitbox.apache.org/repos/asf/maven-resolver.git

commit 717ec73a8b3a81a587cd811935f13ec68b1e4903
Merge: 8ffa710c 570c65e6
Author: Tamas Cservenak <[email protected]>
AuthorDate: Wed May 11 17:51:45 2022 +0200

    Merge remote-tracking branch 'origin/master' into tmp-collect-listener

 .asf.yaml                                          |   9 +
 .../impl/collect/bf/BfDependencyCollector.java     |  10 +-
 ...=> DependencyCollectorDelegateTestSupport.java} | 152 ++---
 .../impl/collect/bf/BfDependencyCollectorTest.java | 620 ++-------------------
 .../bf/BfDependencyCollectorUseSkipTest.java       |  86 ---
 .../impl/collect/df/DfDependencyCollectorTest.java | 620 +--------------------
 .../dependencies-empty/gid_a_ver.ini               |   4 +
 .../dependencies-empty/gid_aa_ver.ini              |   4 +
 .../dependencies-empty/gid_b_ver.ini               |   2 +
 .../dependencies-empty/gid_c_ver.ini               |   2 +
 .../dependencies-empty/gid_d_1.ini                 |   1 +
 .../dependencies-empty/gid_d_2.ini                 |   2 +
 .../dependencies-empty/gid_e_ver.ini               |   2 +
 .../dependencies-empty/gid_f_ver.ini               |   2 +
 .../dependencies-empty/gid_g_1.ini                 |   2 +
 .../dependencies-empty/gid_g_2.ini                 |   2 +
 .../dependencies-empty/gid_h_1.ini                 |   1 +
 .../dependencies-empty/gid_h_2.ini                 |   1 +
 ...tedSubtreeOnDescriptorDependenciesEmptyLeft.txt |   8 +
 ...edSubtreeOnDescriptorDependenciesEmptyRight.txt |   8 +
 20 files changed, 190 insertions(+), 1348 deletions(-)

diff --cc 
maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/collect/bf/BfDependencyCollector.java
index c934e033,4c41d40c..5119a652
--- 
a/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/collect/bf/BfDependencyCollector.java
+++ 
b/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/collect/bf/BfDependencyCollector.java
@@@ -446,12 -446,19 +446,20 @@@ public class BfDependencyCollecto
                                                descriptorResult.getAliases(), 
repos, args.request.getRequestContext() );
  
                      context.getParent().getChildren().add( child );
 +                    dependencyCollected( args.session, context.parents, d, 
descriptorRequest, descriptorResult );
  
                      boolean recurse = traverse && 
!descriptorResult.getDependencies().isEmpty();
+                     DependencyProcessingContext parentContext = 
context.withDependency( d );
                      if ( recurse )
                      {
-                         doRecurse( args, context.withDependency( d ), 
descriptorResult, child );
+                         doRecurse( args, parentContext, descriptorResult, 
child );
+                     }
+                     else if ( !args.skipper.skipResolution( child, 
parentContext.parents ) )
+                     {
+                         List<DependencyNode> parents = new ArrayList<>( 
parentContext.parents.size() + 1 );
+                         parents.addAll( parentContext.parents );
+                         parents.add( child );
+                         args.skipper.cache( child, parents );
                      }
                  }
              }

Reply via email to