diff --git a/apache-maven/pom.xml b/apache-maven/pom.xml index de432eefd0..d22c0afe71 100644 --- a/apache-maven/pom.xml +++ b/apache-maven/pom.xml @@ -88,7 +88,7 @@ under the License. org.apache.maven.resolver - maven-resolver-transport-http + maven-resolver-transport-apache diff --git a/maven-core/src/main/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactory.java b/maven-core/src/main/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactory.java index 6dd44ab79e..a3e718f08b 100644 --- a/maven-core/src/main/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactory.java +++ b/maven-core/src/main/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactory.java @@ -92,16 +92,6 @@ public class DefaultRepositorySystemSessionFactory { */ private static final String MAVEN_REPO_LOCAL_TAIL = "maven.repo.local.tail"; - /** - * User property for chained LRM: should artifact availability be ignored in tail local repositories or not. - * Default: {@code true}, will ignore availability from tail local repositories. - * - * @since 3.9.0 - * @deprecated Use {@link ChainedLocalRepositoryManager#IGNORE_TAIL_AVAILABILITY} instead. - */ - @Deprecated - private static final String MAVEN_REPO_LOCAL_TAIL_IGNORE_AVAILABILITY = "maven.repo.local.tail.ignoreAvailability"; - /** * User property for reverse dependency tree. If enabled, Maven will record ".tracking" directory into local * repository with "reverse dependency tree", essentially explaining WHY given artifact is present in local @@ -134,7 +124,7 @@ public class DefaultRepositorySystemSessionFactory { private static final String WAGON_TRANSPORTER_PRIORITY_KEY = "aether.priority.WagonTransporterFactory"; - private static final String APACHE_HTTP_TRANSPORTER_PRIORITY_KEY = "aether.priority.HttpTransporterFactory"; + private static final String APACHE_HTTP_TRANSPORTER_PRIORITY_KEY = "aether.priority.ApacheTransporterFactory"; private static final String JDK_HTTP_TRANSPORTER_PRIORITY_KEY = "aether.priority.JdkTransporterFactory"; @@ -198,25 +188,6 @@ public class DefaultRepositorySystemSessionFactory { configProps.putAll(request.getSystemProperties()); configProps.putAll(request.getUserProperties()); - // we need to "translate" this - if (configProps.containsKey(MAVEN_REPO_LOCAL_TAIL_IGNORE_AVAILABILITY)) { - logger.warn( - "User property {} is DEPRECATED, switch to {}", - MAVEN_REPO_LOCAL_TAIL_IGNORE_AVAILABILITY, - ChainedLocalRepositoryManager.IGNORE_TAIL_AVAILABILITY); - configProps.put( - ChainedLocalRepositoryManager.IGNORE_TAIL_AVAILABILITY, - configProps.get(MAVEN_REPO_LOCAL_TAIL_IGNORE_AVAILABILITY)); - } - - // HACK: Resolver 2.0.0-alpha-2 carries a bad change: - // https://github.com/apache/maven-resolver/commit/178cfba9f3889f7e942a6a0d74716355b01a78f5 - // that is fixed in later versions by MRESOLVER-437 https://github.com/apache/maven-resolver/pull/373 - // TODO: remove this hack below once Resolver PR above is applied - if (!configProps.containsKey(ConfigurationProperties.HTTP_EXPECT_CONTINUE)) { - configProps.put(ConfigurationProperties.HTTP_EXPECT_CONTINUE, Boolean.FALSE.toString()); - } - session.setOffline(request.isOffline()); session.setChecksumPolicy(request.getGlobalChecksumPolicy()); session.setUpdatePolicy( @@ -277,6 +248,8 @@ public class DefaultRepositorySystemSessionFactory { } session.setProxySelector(proxySelector); + // Note: we do NOT use WagonTransportConfigurationKeys here as Maven Core does NOT depend on Wagon Transport + // and this is okay and "good thing". DefaultAuthenticationSelector authSelector = new DefaultAuthenticationSelector(); for (Server server : decrypted.getServers()) { AuthenticationBuilder authBuilder = new AuthenticationBuilder(); @@ -291,7 +264,7 @@ public class DefaultRepositorySystemSessionFactory { .collect(Collectors.toList()); dom = new XmlNodeImpl(dom.getName(), null, null, children, null); PlexusConfiguration config = XmlPlexusConfiguration.toPlexusConfiguration(dom); - configProps.put("aether.connector.wagon.config." + server.getId(), config); + configProps.put("aether.transport.wagon.config." + server.getId(), config); // Translate to proper resolver configuration properties as well (as Plexus XML above is Wagon specific // only) but support only configuration/httpConfiguration/all, see @@ -363,8 +336,8 @@ public class DefaultRepositorySystemSessionFactory { } } - configProps.put("aether.connector.perms.fileMode." + server.getId(), server.getFilePermissions()); - configProps.put("aether.connector.perms.dirMode." + server.getId(), server.getDirectoryPermissions()); + configProps.put("aether.transport.wagon.perms.fileMode." + server.getId(), server.getFilePermissions()); + configProps.put("aether.transport.wagon.perms.dirMode." + server.getId(), server.getDirectoryPermissions()); } session.setAuthenticationSelector(authSelector); diff --git a/maven-core/src/test/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactoryTest.java b/maven-core/src/test/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactoryTest.java index 16b90aa4ed..f3e359310e 100644 --- a/maven-core/src/test/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactoryTest.java +++ b/maven-core/src/test/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactoryTest.java @@ -148,7 +148,7 @@ public class DefaultRepositorySystemSessionFactoryTest { PlexusConfiguration plexusConfiguration = (PlexusConfiguration) systemSessionFactory .newRepositorySession(request) .getConfigProperties() - .get("aether.connector.wagon.config.repository"); + .get("aether.transport.wagon.config.repository"); assertNotNull(plexusConfiguration); assertEquals(0, plexusConfiguration.getChildCount()); } @@ -370,7 +370,7 @@ public class DefaultRepositorySystemSessionFactoryTest { Map configProperties = systemSessionFactory.newRepositorySession(request).getConfigProperties(); assertEquals(String.valueOf(Float.MAX_VALUE), configProperties.get("aether.priority.FileTransporterFactory")); - assertEquals(String.valueOf(Float.MAX_VALUE), configProperties.get("aether.priority.HttpTransporterFactory")); + assertEquals(String.valueOf(Float.MAX_VALUE), configProperties.get("aether.priority.ApacheTransporterFactory")); properties.remove("maven.resolver.transport"); // wagon diff --git a/maven-resolver-provider/pom.xml b/maven-resolver-provider/pom.xml index 3fa1082705..37665f74e1 100644 --- a/maven-resolver-provider/pom.xml +++ b/maven-resolver-provider/pom.xml @@ -120,7 +120,7 @@ under the License. org.apache.maven.resolver - maven-resolver-transport-http + maven-resolver-transport-apache test diff --git a/pom.xml b/pom.xml index 2922a5ce53..9d9ee92143 100644 --- a/pom.xml +++ b/pom.xml @@ -176,7 +176,7 @@ under the License. 1.26 1.0.0 4.0.1 - 2.0.0-alpha-2 + 2.0.0-alpha-3 2.0 0.9.0.M2 1.7.36 @@ -389,7 +389,7 @@ under the License. org.apache.maven.resolver - maven-resolver-transport-http + maven-resolver-transport-apache ${resolverVersion}