You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by gg...@apache.org on 2023/08/04 08:56:20 UTC

[camel] branch main updated: [CAMEL-19637] Update to Maven 3.9.4 and Maven Resolver 1.9.14

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

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


The following commit(s) were added to refs/heads/main by this push:
     new 59600748052 [CAMEL-19637] Update to Maven 3.9.4 and Maven Resolver 1.9.14
59600748052 is described below

commit 5960074805250b5239e034d9d892e97049920601
Author: Grzegorz Grzybek <gr...@gmail.com>
AuthorDate: Fri Aug 4 10:55:49 2023 +0200

    [CAMEL-19637] Update to Maven 3.9.4 and Maven Resolver 1.9.14
---
 parent/pom.xml                                     |  4 +--
 .../camel/tooling/maven/MavenDownloaderImpl.java   | 30 +++++++++++++++++++---
 tooling/parent/pom.xml                             |  2 +-
 3 files changed, 29 insertions(+), 7 deletions(-)

diff --git a/parent/pom.xml b/parent/pom.xml
index 3e2eb7006f1..04f93dc54a5 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -313,7 +313,7 @@
         <littleproxy-version>2.0.19</littleproxy-version>
         <mapstruct-version>1.5.5.Final</mapstruct-version>
         <!-- needed from tooling/archetypes -->
-        <maven-version>3.8.8</maven-version>
+        <maven-version>3.9.4</maven-version>
         <maven-antrun-plugin-version>3.1.0</maven-antrun-plugin-version>
         <maven-archetype-plugin-version>3.2.1</maven-archetype-plugin-version>
         <maven-archetype-packaging-version>3.2.1</maven-archetype-packaging-version>
@@ -327,7 +327,7 @@
         <maven-resources-plugin-version>3.3.1</maven-resources-plugin-version>
         <maven-reporting-api-version>3.1.1</maven-reporting-api-version>
         <maven-reporting-impl-version>3.2.0</maven-reporting-impl-version>
-        <maven-resolver-version>1.9.13</maven-resolver-version>
+        <maven-resolver-version>1.9.14</maven-resolver-version>
         <maven-shade-plugin-version>3.5.0</maven-shade-plugin-version>
         <maven-shared-utils-plugin-version>3.4.2</maven-shared-utils-plugin-version>
         <maven-surefire-report-plugin-version>3.1.2</maven-surefire-report-plugin-version>
diff --git a/tooling/camel-tooling-maven/src/main/java/org/apache/camel/tooling/maven/MavenDownloaderImpl.java b/tooling/camel-tooling-maven/src/main/java/org/apache/camel/tooling/maven/MavenDownloaderImpl.java
index 7c72d6d821c..a4c14783274 100644
--- a/tooling/camel-tooling-maven/src/main/java/org/apache/camel/tooling/maven/MavenDownloaderImpl.java
+++ b/tooling/camel-tooling-maven/src/main/java/org/apache/camel/tooling/maven/MavenDownloaderImpl.java
@@ -44,8 +44,11 @@ import org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Reader;
 import org.apache.maven.model.building.DefaultModelBuilderFactory;
 import org.apache.maven.model.building.ModelBuilder;
 import org.apache.maven.repository.internal.DefaultArtifactDescriptorReader;
+import org.apache.maven.repository.internal.DefaultModelCacheFactory;
 import org.apache.maven.repository.internal.DefaultVersionRangeResolver;
 import org.apache.maven.repository.internal.DefaultVersionResolver;
+import org.apache.maven.repository.internal.ModelCacheFactory;
+import org.apache.maven.repository.internal.PluginsMetadataGeneratorFactory;
 import org.apache.maven.repository.internal.SnapshotMetadataGeneratorFactory;
 import org.apache.maven.repository.internal.VersionsMetadataGeneratorFactory;
 import org.apache.maven.settings.Mirror;
@@ -135,12 +138,13 @@ import org.eclipse.aether.internal.impl.TrackingFileManager;
 import org.eclipse.aether.internal.impl.checksum.DefaultChecksumAlgorithmFactorySelector;
 import org.eclipse.aether.internal.impl.checksum.Md5ChecksumAlgorithmFactory;
 import org.eclipse.aether.internal.impl.checksum.Sha1ChecksumAlgorithmFactory;
+import org.eclipse.aether.internal.impl.checksum.Sha256ChecksumAlgorithmFactory;
+import org.eclipse.aether.internal.impl.checksum.Sha512ChecksumAlgorithmFactory;
 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.NameMapper;
 import org.eclipse.aether.internal.impl.synccontext.named.NameMappers;
@@ -509,6 +513,7 @@ public class MavenDownloaderImpl extends ServiceSupport implements MavenDownload
         copy.fresh = fresh;
         copy.apacheSnapshotsIncluded = apacheSnapshotsIncluded;
         copy.customRepositoryCounter = customRepositoryCounter;
+        copy.repositoryResolver = repositoryResolver;
 
         LocalRepositoryManagerFactory lrmFactory = registry.lookupByClass(LocalRepositoryManagerFactory.class);
 
@@ -632,9 +637,12 @@ public class MavenDownloaderImpl extends ServiceSupport implements MavenDownload
         // remaining requirements of org.eclipse.aether.internal.impl.DefaultInstaller
         registry.bind(MetadataGeneratorFactory.class, SnapshotMetadataGeneratorFactory.class);
         registry.bind(MetadataGeneratorFactory.class, VersionsMetadataGeneratorFactory.class);
+        // Maven 3.9.x
+        registry.bind(MetadataGeneratorFactory.class, PluginsMetadataGeneratorFactory.class);
 
         // remaining requirements of org.eclipse.aether.internal.impl.DefaultLocalRepositoryProvider
         registry.bind(LocalRepositoryManagerFactory.class, EnhancedLocalRepositoryManagerFactory.class);
+        //registry.bind(LocalRepositoryManagerFactory.class, SimpleLocalRepositoryManagerFactory.class);
 
         // remaining requirements of org.eclipse.aether.internal.impl.synccontext.DefaultSyncContextFactory
         registry.bind(NamedLockFactoryAdapterFactory.class, NamedLockFactoryAdapterFactoryImpl.class);
@@ -660,19 +668,31 @@ public class MavenDownloaderImpl extends ServiceSupport implements MavenDownload
         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,
-                org.eclipse.aether.internal.impl.synccontext.legacy.DefaultSyncContextFactory.class);
+        // no longer needed for Maven 3.9+ (see: MNG-7247)
+        //registry.bind(org.eclipse.aether.impl.SyncContextFactory.class,
+        //        org.eclipse.aether.internal.impl.synccontext.legacy.DefaultSyncContextFactory.class);
 
         // requirements of org.eclipse.aether.internal.impl.EnhancedLocalRepositoryManagerFactory
         registry.bind(LocalPathComposer.class, DefaultLocalPathComposer.class);
         registry.bind(LocalPathPrefixComposerFactory.class, DefaultLocalPathPrefixComposerFactory.class);
 
         // additional services
-        registry.bind(org.eclipse.aether.spi.log.LoggerFactory.class, Slf4jLoggerFactory.class);
+        //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);
+
+        // resolver 1.9.x + maven 3.9.x
+        registry.bind(ModelCacheFactory.class, DefaultModelCacheFactory.class);
+
+        // not used / optional
+        //  - org.eclipse.aether.internal.impl.DefaultArtifactResolver.setArtifactResolverPostProcessors()
+        //  - org.eclipse.aether.connector.basic.BasicRepositoryConnectorFactory.setProvidedChecksumSources()
+        //  - org.eclipse.aether.spi.connector.filter.RemoteRepositoryFilterSource.class
+        //     - org.eclipse.aether.internal.impl.filter.GroupIdRemoteRepositoryFilterSource.class
+        //     - org.eclipse.aether.internal.impl.filter.PrefixesRemoteRepositoryFilterSource.class
+        //  - org.eclipse.aether.spi.checksums.TrustedChecksumsSource.class
     }
 
     /**
@@ -708,6 +728,8 @@ public class MavenDownloaderImpl extends ServiceSupport implements MavenDownload
         // checksum algorithm factory selector needs at least MD5 and SHA1 algorithm factories
         registry.bind(ChecksumAlgorithmFactory.class, Md5ChecksumAlgorithmFactory.class);
         registry.bind(ChecksumAlgorithmFactory.class, Sha1ChecksumAlgorithmFactory.class);
+        registry.bind(ChecksumAlgorithmFactory.class, Sha256ChecksumAlgorithmFactory.class);
+        registry.bind(ChecksumAlgorithmFactory.class, Sha512ChecksumAlgorithmFactory.class);
     }
 
     /**
diff --git a/tooling/parent/pom.xml b/tooling/parent/pom.xml
index c29bef414bc..c5489deb985 100644
--- a/tooling/parent/pom.xml
+++ b/tooling/parent/pom.xml
@@ -33,7 +33,7 @@
     <description>Camel Tooling Parent POM</description>
 
     <properties>
-        <maven-version>3.8.8</maven-version>
+        <maven-version>3.9.4</maven-version>
         <maven-maven-plugin-descriptor-version>2.2.1</maven-maven-plugin-descriptor-version>
         <maven-project-version>2.2.1</maven-project-version>
         <maven-dependency-tree-version>3.2.1</maven-dependency-tree-version>