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

ggrzybek pushed a commit to branch camel-3.x
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/camel-3.x by this push:
     new d6ef5a5ee6c [CAMEL-18880] Upgrade to maven-resolver 1.9.2 (and prepare 
for 1.9.4)
d6ef5a5ee6c is described below

commit d6ef5a5ee6ccd2ac8edb3eefc21ce8f916636311
Author: Grzegorz Grzybek <gr.grzy...@gmail.com>
AuthorDate: Fri Jan 13 09:30:28 2023 +0100

    [CAMEL-18880] Upgrade to maven-resolver 1.9.2 (and prepare for 1.9.4)
---
 .../main/download/MavenDependencyDownloader.java   | 39 +++++++++++++++++-----
 .../camel/main/MavenDependencyResolverTest.java    |  4 +--
 parent/pom.xml                                     |  2 +-
 3 files changed, 34 insertions(+), 11 deletions(-)

diff --git 
a/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/download/MavenDependencyDownloader.java
 
b/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/download/MavenDependencyDownloader.java
index 33d9841a97e..64cb9f4a4bd 100644
--- 
a/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/download/MavenDependencyDownloader.java
+++ 
b/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/download/MavenDependencyDownloader.java
@@ -100,9 +100,11 @@ import org.eclipse.aether.impl.LocalRepositoryProvider;
 import org.eclipse.aether.impl.MetadataGeneratorFactory;
 import org.eclipse.aether.impl.MetadataResolver;
 import org.eclipse.aether.impl.OfflineController;
+import org.eclipse.aether.impl.RemoteRepositoryFilterManager;
 import org.eclipse.aether.impl.RemoteRepositoryManager;
 import org.eclipse.aether.impl.RepositoryConnectorProvider;
 import org.eclipse.aether.impl.RepositoryEventDispatcher;
+import org.eclipse.aether.impl.RepositorySystemLifecycle;
 import org.eclipse.aether.impl.UpdateCheckManager;
 import org.eclipse.aether.impl.UpdatePolicyAnalyzer;
 import org.eclipse.aether.impl.VersionRangeResolver;
@@ -122,6 +124,7 @@ import 
org.eclipse.aether.internal.impl.DefaultRepositoryConnectorProvider;
 import org.eclipse.aether.internal.impl.DefaultRepositoryEventDispatcher;
 import org.eclipse.aether.internal.impl.DefaultRepositoryLayoutProvider;
 import org.eclipse.aether.internal.impl.DefaultRepositorySystem;
+import org.eclipse.aether.internal.impl.DefaultRepositorySystemLifecycle;
 import org.eclipse.aether.internal.impl.DefaultTrackingFileManager;
 import org.eclipse.aether.internal.impl.DefaultTransporterProvider;
 import org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
@@ -138,15 +141,18 @@ import 
org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector;
 import org.eclipse.aether.internal.impl.collect.DependencyCollectorDelegate;
 import org.eclipse.aether.internal.impl.collect.bf.BfDependencyCollector;
 import org.eclipse.aether.internal.impl.collect.df.DfDependencyCollector;
+import 
org.eclipse.aether.internal.impl.filter.DefaultRemoteRepositoryFilterManager;
 import org.eclipse.aether.internal.impl.slf4j.Slf4jLoggerFactory;
 import org.eclipse.aether.internal.impl.synccontext.DefaultSyncContextFactory;
-import org.eclipse.aether.internal.impl.synccontext.named.GAVNameMapper;
 import org.eclipse.aether.internal.impl.synccontext.named.NameMapper;
-import 
org.eclipse.aether.internal.impl.synccontext.named.NamedLockFactorySelector;
-import 
org.eclipse.aether.internal.impl.synccontext.named.SimpleNamedLockFactorySelector;
+import 
org.eclipse.aether.internal.impl.synccontext.named.NamedLockFactoryAdapterFactory;
+import 
org.eclipse.aether.internal.impl.synccontext.named.NamedLockFactoryAdapterFactoryImpl;
+import 
org.eclipse.aether.internal.impl.synccontext.named.providers.GAVNameMapperProvider;
 import org.eclipse.aether.named.NamedLockFactory;
 import org.eclipse.aether.named.providers.FileLockNamedLockFactory;
 import org.eclipse.aether.named.providers.LocalReadWriteLockNamedLockFactory;
+import org.eclipse.aether.named.providers.LocalSemaphoreNamedLockFactory;
+import org.eclipse.aether.named.providers.NoopNamedLockFactory;
 import org.eclipse.aether.repository.Authentication;
 import org.eclipse.aether.repository.AuthenticationSelector;
 import org.eclipse.aether.repository.LocalRepository;
@@ -648,7 +654,9 @@ public class MavenDependencyDownloader extends 
ServiceSupport implements Depende
         registry.bind(LocalRepositoryManagerFactory.class, 
EnhancedLocalRepositoryManagerFactory.class);
 
         // remaining requirements of 
org.eclipse.aether.internal.impl.synccontext.DefaultSyncContextFactory
-        registry.bind(NamedLockFactorySelector.class, 
SimpleNamedLockFactorySelector.class);
+        registry.bind(NamedLockFactoryAdapterFactory.class, 
NamedLockFactoryAdapterFactoryImpl.class);
+
+        HashMap<String, NameMapper> mappers = new HashMap<>();
 
         // remaining requirements of 
org.eclipse.aether.internal.impl.DefaultRemoteRepositoryManager
         registry.bind(UpdatePolicyAnalyzer.class, 
DefaultUpdatePolicyAnalyzer.class);
@@ -659,10 +667,19 @@ public class MavenDependencyDownloader extends 
ServiceSupport implements Depende
         // requirements of 
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager
         registry.bind(TrackingFileManager.class, 
DefaultTrackingFileManager.class);
 
-        // requirements of 
org.eclipse.aether.internal.impl.synccontext.named.SimpleNamedLockFactorySelector
+        // requirements of 
org.eclipse.aether.internal.impl.synccontext.named.NamedLockFactoryAdapterFactoryImpl
         registry.bind(NamedLockFactory.class, FileLockNamedLockFactory.class);
         registry.bind(NamedLockFactory.class, 
LocalReadWriteLockNamedLockFactory.class);
-        registry.bind(NameMapper.class, GAVNameMapper.class);
+        registry.bind(NamedLockFactory.class, NoopNamedLockFactory.class);
+        registry.bind(NamedLockFactory.class, 
LocalSemaphoreNamedLockFactory.class);
+        // 1.9.2
+        registry.bind(GAVNameMapperProvider.NAME, NameMapper.class, new 
GAVNameMapperProvider().get());
+        // 1.9.4 (soon)
+        //        registry.bind(NameMappers.GAV_NAME, NameMapper.class, 
NameMappers.gavNameMapper());
+        //        registry.bind(NameMappers.STATIC_NAME, NameMapper.class, 
NameMappers.staticNameMapper());
+        //        registry.bind(NameMappers.DISCRIMINATING_NAME, 
NameMapper.class, NameMappers.discriminatingNameMapper());
+        //        registry.bind(NameMappers.FILE_GAV_NAME, NameMapper.class, 
NameMappers.fileGavNameMapper());
+        //        registry.bind(NameMappers.FILE_HGAV_NAME, NameMapper.class, 
NameMappers.fileHashingGavNameMapper());
 
         // requirements of 
org.apache.maven.repository.internal.DefaultVersionResolver (these are 
deprecated)
         registry.bind(org.eclipse.aether.impl.SyncContextFactory.class,
@@ -674,6 +691,10 @@ public class MavenDependencyDownloader extends 
ServiceSupport implements Depende
 
         // additional services
         registry.bind(org.eclipse.aether.spi.log.LoggerFactory.class, 
Slf4jLoggerFactory.class);
+
+        // resolver 1.9.x
+        registry.bind(RemoteRepositoryFilterManager.class, 
DefaultRemoteRepositoryFilterManager.class);
+        registry.bind(RepositorySystemLifecycle.class, 
DefaultRepositorySystemLifecycle.class);
     }
 
     /**
@@ -1202,8 +1223,10 @@ public class MavenDependencyDownloader extends 
ServiceSupport implements Depende
                     })
                     .collect(Collectors.toList());
         } catch (DependencyResolutionException e) {
-            String msg = "Cannot resolve dependencies in " + 
repositories.stream().map(RemoteRepository::getUrl)
-                    .collect(Collectors.joining(", "));
+            String repos = repositories == null
+                    ? "(empty URL list)"
+                    : 
repositories.stream().map(RemoteRepository::getUrl).collect(Collectors.joining(",
 "));
+            String msg = "Cannot resolve dependencies in " + repos;
             throw new DownloadException(msg, e);
         } catch (RuntimeException e) {
             throw new DownloadException("Unknown error occurred while trying 
to resolve dependencies", e);
diff --git 
a/dsl/camel-kamelet-main/src/test/java/org/apache/camel/main/MavenDependencyResolverTest.java
 
b/dsl/camel-kamelet-main/src/test/java/org/apache/camel/main/MavenDependencyResolverTest.java
index 9287a2c7496..32530a383ce 100644
--- 
a/dsl/camel-kamelet-main/src/test/java/org/apache/camel/main/MavenDependencyResolverTest.java
+++ 
b/dsl/camel-kamelet-main/src/test/java/org/apache/camel/main/MavenDependencyResolverTest.java
@@ -135,14 +135,14 @@ public class MavenDependencyResolverTest {
              MavenDependencyDownloader downloader = new 
MavenDependencyDownloader()) {
             downloader.build();
 
-            List<MavenArtifact> answer = 
downloader.resolveDependenciesViaAether(deps, null, true);
+            List<MavenArtifact> answer = 
downloader.resolveDependenciesViaAether(deps, true);
             Assertions.assertNotNull(answer);
             assertTrue(answer.size() > 15);
             for (MavenArtifact ma : answer) {
                 LOG.info("Artifact (transitive): {}", ma);
             }
 
-            answer = downloader.resolveDependenciesViaAether(deps, null, 
false);
+            answer = downloader.resolveDependenciesViaAether(deps, false);
             Assertions.assertNotNull(answer);
             assertEquals(1, answer.size());
             for (MavenArtifact ma : answer) {
diff --git a/parent/pom.xml b/parent/pom.xml
index 0c14768f946..f7d4cbb86ab 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -385,7 +385,7 @@
         <maven-resources-plugin-version>3.2.0</maven-resources-plugin-version>
         <maven-reporting-api-version>2.2.1</maven-reporting-api-version>
         <maven-reporting-impl-version>2.0.5</maven-reporting-impl-version>
-        <maven-resolver-version>1.8.2</maven-resolver-version>
+        <maven-resolver-version>1.9.2</maven-resolver-version>
         <maven-shade-plugin-version>3.4.1</maven-shade-plugin-version>
         
<maven-shared-utils-plugin-version>3.3.4</maven-shared-utils-plugin-version>
         
<maven-surefire-report-plugin-version>3.0.0-M4</maven-surefire-report-plugin-version>

Reply via email to