You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by sc...@apache.org on 2016/11/11 22:50:59 UTC

[1/2] maven git commit: [MNG-4645] Move central repo definition out of Maven's core so it can be more easily changed.

Repository: maven
Updated Branches:
  refs/heads/master f41126521 -> 6b0b7a932


[MNG-4645] Move central repo definition out of Maven's core so it can be more easily changed.

This reverts commit 15a9c32f6775f10fb5317ad6cddfafd72d7f9e8d.


Project: http://git-wip-us.apache.org/repos/asf/maven/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven/commit/e3079b79
Tree: http://git-wip-us.apache.org/repos/asf/maven/tree/e3079b79
Diff: http://git-wip-us.apache.org/repos/asf/maven/diff/e3079b79

Branch: refs/heads/master
Commit: e3079b796bf215ede782a44b6478ec4007333bc6
Parents: f411265
Author: Christian Schulte <sc...@apache.org>
Authored: Fri Nov 11 23:45:35 2016 +0100
Committer: Christian Schulte <sc...@apache.org>
Committed: Fri Nov 11 23:45:35 2016 +0100

----------------------------------------------------------------------
 .../maven/bridge/MavenRepositorySystem.java     | 32 +++++-----
 .../DefaultMavenExecutionRequestPopulator.java  | 67 +++++++++++++++++---
 .../maven/repository/RepositorySystem.java      | 15 -----
 .../project/AbstractMavenProjectTestCase.java   | 13 +---
 .../artifact/DefaultMavenMetadataCacheTest.java | 36 ++---------
 .../maven/repository/TestRepositorySystem.java  | 10 ++-
 6 files changed, 84 insertions(+), 89 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/e3079b79/maven-core/src/main/java/org/apache/maven/bridge/MavenRepositorySystem.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/bridge/MavenRepositorySystem.java b/maven-core/src/main/java/org/apache/maven/bridge/MavenRepositorySystem.java
index ee77e76..147118c 100644
--- a/maven-core/src/main/java/org/apache/maven/bridge/MavenRepositorySystem.java
+++ b/maven-core/src/main/java/org/apache/maven/bridge/MavenRepositorySystem.java
@@ -416,8 +416,8 @@ public class MavenRepositorySystem
         }
 
         return new ArtifactRepositoryPolicy( enabled, updatePolicy, checksumPolicy );
-    }
-
+    }    
+    
     public ArtifactRepository createArtifactRepository( String id, String url, String layoutId,
                                                         ArtifactRepositoryPolicy snapshots,
                                                         ArtifactRepositoryPolicy releases )
@@ -439,7 +439,7 @@ public class MavenRepositorySystem
                                                 repositoryId ) );
         }
     }
-
+    
     public static ArtifactRepository createArtifactRepository( String id, String url,
                                                         ArtifactRepositoryLayout repositoryLayout,
                                                         ArtifactRepositoryPolicy snapshots,
@@ -564,21 +564,19 @@ public class MavenRepositorySystem
         return new DefaultArtifact( groupId, artifactId, versionRange, desiredScope, type, classifier, handler,
                                     optional );
     }
-
+    
     //
     // Code taken from LegacyRepositorySystem
     //
-    /**
-     * @deprecated As of 3.4, Maven no longer falls back to a hard-coded default repository with identifier
-     * {@code central} if such a repository is not provided in the settings or the POM.
-     */
-    @Deprecated
     public ArtifactRepository createDefaultRemoteRepository( MavenExecutionRequest request )
         throws Exception
     {
-        throw new UnsupportedOperationException();
+        return createRepository( RepositorySystem.DEFAULT_REMOTE_REPO_URL, RepositorySystem.DEFAULT_REMOTE_REPO_ID,
+                                 true, ArtifactRepositoryPolicy.UPDATE_POLICY_DAILY, false,
+                                 ArtifactRepositoryPolicy.UPDATE_POLICY_DAILY,
+                                 ArtifactRepositoryPolicy.CHECKSUM_POLICY_WARN );
     }
-
+    
     public ArtifactRepository createRepository( String url, String repositoryId, boolean releases,
                                                  String releaseUpdates, boolean snapshots, String snapshotUpdates,
                                                  String checksumPolicy ) throws Exception
@@ -591,7 +589,7 @@ public class MavenRepositorySystem
 
         return createArtifactRepository( repositoryId, url, "default", snapshotsPolicy, releasesPolicy );
     }
-
+        
     public Set<String> getRepoIds( List<ArtifactRepository> repositories )
     {
         Set<String> repoIds = new HashSet<>();
@@ -606,8 +604,8 @@ public class MavenRepositorySystem
 
         return repoIds;
     }
-
-
+    
+    
     public ArtifactRepository createLocalRepository( MavenExecutionRequest request, File localRepository )
         throws Exception
     {
@@ -616,8 +614,8 @@ public class MavenRepositorySystem
                                  ArtifactRepositoryPolicy.UPDATE_POLICY_ALWAYS, true,
                                  ArtifactRepositoryPolicy.UPDATE_POLICY_ALWAYS,
                                  ArtifactRepositoryPolicy.CHECKSUM_POLICY_IGNORE );
-    }
-
+    }    
+    
     private static final String WILDCARD = "*";
 
     private static final String EXTERNAL_WILDCARD = "external:*";
@@ -782,5 +780,5 @@ public class MavenRepositorySystem
         }
 
         return result;
-    }
+    }    
 }

http://git-wip-us.apache.org/repos/asf/maven/blob/e3079b79/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequestPopulator.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequestPopulator.java b/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequestPopulator.java
index 2bed92f..ba5630e 100644
--- a/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequestPopulator.java
+++ b/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequestPopulator.java
@@ -24,6 +24,7 @@ import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.Set;
 
 import javax.inject.Inject;
 import javax.inject.Named;
@@ -32,12 +33,18 @@ import org.apache.maven.artifact.InvalidRepositoryException;
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.bridge.MavenRepositorySystem;
 import org.apache.maven.repository.RepositorySystem;
+//
+// All of this needs to go away and be couched in terms of the execution request
+//
 import org.apache.maven.settings.Mirror;
 import org.apache.maven.settings.Proxy;
 import org.apache.maven.settings.Repository;
 import org.apache.maven.settings.Server;
 import org.apache.maven.settings.Settings;
 import org.apache.maven.settings.SettingsUtils;
+//
+// Settings in core
+//
 import org.apache.maven.toolchain.model.PersistedToolchains;
 import org.apache.maven.toolchain.model.ToolchainModel;
 import org.codehaus.plexus.util.StringUtils;
@@ -46,9 +53,9 @@ import org.codehaus.plexus.util.StringUtils;
 public class DefaultMavenExecutionRequestPopulator
     implements MavenExecutionRequestPopulator
 {
-
+            
     private final MavenRepositorySystem repositorySystem;
-
+    
     @Inject
     public DefaultMavenExecutionRequestPopulator( MavenRepositorySystem repositorySystem )
     {
@@ -78,7 +85,7 @@ public class DefaultMavenExecutionRequestPopulator
         }
         return request;
     }
-
+    
     @Override
     public MavenExecutionRequest populateDefaults( MavenExecutionRequest request )
         throws MavenExecutionRequestPopulationException
@@ -89,19 +96,59 @@ public class DefaultMavenExecutionRequestPopulator
 
         populateDefaultPluginGroups( request );
 
+        injectDefaultRepositories( request );
+
+        injectDefaultPluginRepositories( request );
+
         return request;
     }
-
+    
     //
     //
     //
-
+    
     private void populateDefaultPluginGroups( MavenExecutionRequest request )
     {
         request.addPluginGroup( "org.apache.maven.plugins" );
         request.addPluginGroup( "org.codehaus.mojo" );
     }
 
+    private void injectDefaultRepositories( MavenExecutionRequest request )
+        throws MavenExecutionRequestPopulationException
+    {
+        Set<String> definedRepositories = repositorySystem.getRepoIds( request.getRemoteRepositories() );
+
+        if ( !definedRepositories.contains( RepositorySystem.DEFAULT_REMOTE_REPO_ID ) )
+        {
+            try
+            {
+                request.addRemoteRepository( repositorySystem.createDefaultRemoteRepository( request ) );
+            }
+            catch ( Exception e )
+            {
+                throw new MavenExecutionRequestPopulationException( "Cannot create default remote repository.", e );
+            }
+        }
+    }
+
+    private void injectDefaultPluginRepositories( MavenExecutionRequest request )
+        throws MavenExecutionRequestPopulationException
+    {
+        Set<String> definedRepositories = repositorySystem.getRepoIds( request.getPluginArtifactRepositories() );
+
+        if ( !definedRepositories.contains( RepositorySystem.DEFAULT_REMOTE_REPO_ID ) )
+        {
+            try
+            {
+                request.addPluginArtifactRepository( repositorySystem.createDefaultRemoteRepository( request ) );
+            }
+            catch ( Exception e )
+            {
+                throw new MavenExecutionRequestPopulationException( "Cannot create default remote repository.", e );
+            }
+        }
+    }
+
     private void localRepository( MavenExecutionRequest request )
         throws MavenExecutionRequestPopulationException
     {
@@ -159,10 +206,10 @@ public class DefaultMavenExecutionRequestPopulator
         {
             request.setBaseDirectory( request.getPom().getAbsoluteFile().getParentFile() );
         }
-    }
-
+    }   
+    
     /*if_not[MAVEN4]*/
-
+    
     @Override
     @Deprecated
     public MavenExecutionRequest populateFromSettings( MavenExecutionRequest request, Settings settings )
@@ -264,8 +311,8 @@ public class DefaultMavenExecutionRequestPopulator
         }
 
         return request;
-    }
-
+    }    
+    
     /*end[MAVEN4]*/
 
 }

http://git-wip-us.apache.org/repos/asf/maven/blob/e3079b79/maven-core/src/main/java/org/apache/maven/repository/RepositorySystem.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/repository/RepositorySystem.java b/maven-core/src/main/java/org/apache/maven/repository/RepositorySystem.java
index 8ea58a6..fcc0f77 100644
--- a/maven-core/src/main/java/org/apache/maven/repository/RepositorySystem.java
+++ b/maven-core/src/main/java/org/apache/maven/repository/RepositorySystem.java
@@ -50,18 +50,8 @@ public interface RepositorySystem
 
     File defaultUserLocalRepository = new File( userMavenConfigurationHome, "repository" );
 
-    /**
-     * @deprecated As of 3.4, Maven no longer falls back to a hard-coded default repository with identifier
-     * {@code central} if such a repository is not provided in the settings or the POM.
-     */
-    @Deprecated
     String DEFAULT_REMOTE_REPO_ID = "central";
 
-    /**
-     * @deprecated As of 3.4, Maven no longer falls back to a hard-coded default repository with identifier
-     * {@code central} if such a repository is not provided in the settings or the POM.
-     */
-    @Deprecated
     String DEFAULT_REMOTE_REPO_URL = "https://repo.maven.apache.org/maven2";
 
     Artifact createArtifact( String groupId, String artifactId, String version, String packaging );
@@ -80,11 +70,6 @@ public interface RepositorySystem
     ArtifactRepository buildArtifactRepository( Repository repository )
         throws InvalidRepositoryException;
 
-    /**
-     * @deprecated As of 3.4, Maven no longer falls back to a hard-coded default repository with identifier
-     * {@code central} if such a repository is not provided in the settings or the POM.
-     */
-    @Deprecated
     ArtifactRepository createDefaultRemoteRepository()
         throws InvalidRepositoryException;
 

http://git-wip-us.apache.org/repos/asf/maven/blob/e3079b79/maven-core/src/test/java/org/apache/maven/project/AbstractMavenProjectTestCase.java
----------------------------------------------------------------------
diff --git a/maven-core/src/test/java/org/apache/maven/project/AbstractMavenProjectTestCase.java b/maven-core/src/test/java/org/apache/maven/project/AbstractMavenProjectTestCase.java
index 68f0219..147aa9d 100644
--- a/maven-core/src/test/java/org/apache/maven/project/AbstractMavenProjectTestCase.java
+++ b/maven-core/src/test/java/org/apache/maven/project/AbstractMavenProjectTestCase.java
@@ -23,10 +23,7 @@ import java.net.URL;
 import java.util.Arrays;
 
 import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
-import org.apache.maven.artifact.repository.MavenArtifactRepository;
 import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
-import org.apache.maven.artifact.repository.layout.DefaultRepositoryLayout;
 import org.apache.maven.model.building.ModelBuildingException;
 import org.apache.maven.model.building.ModelBuildingRequest;
 import org.apache.maven.model.building.ModelProblem;
@@ -176,17 +173,9 @@ public abstract class AbstractMavenProjectTestCase
     protected MavenProject getProjectFromRemoteRepository( final File pom )
         throws Exception
     {
-        final ArtifactRepository testRepository =
-            new MavenArtifactRepository( "test",
-                                         "file://" + new File( System.getProperty( "basedir", "" ),
-                                                               "src/test/remote-repo" ).toURI().getPath(),
-                                         new DefaultRepositoryLayout(),
-                                         new ArtifactRepositoryPolicy(),
-                                         new ArtifactRepositoryPolicy() );
-
         final ProjectBuildingRequest configuration = new DefaultProjectBuildingRequest();
         configuration.setLocalRepository( this.getLocalRepository() );
-        configuration.setRemoteRepositories( Arrays.asList( testRepository ) );
+        configuration.setRemoteRepositories( Arrays.asList( this.repositorySystem.createDefaultRemoteRepository() ) );
         initRepoSession( configuration );
 
         return projectBuilder.build( pom, configuration ).getProject();

http://git-wip-us.apache.org/repos/asf/maven/blob/e3079b79/maven-core/src/test/java/org/apache/maven/project/artifact/DefaultMavenMetadataCacheTest.java
----------------------------------------------------------------------
diff --git a/maven-core/src/test/java/org/apache/maven/project/artifact/DefaultMavenMetadataCacheTest.java b/maven-core/src/test/java/org/apache/maven/project/artifact/DefaultMavenMetadataCacheTest.java
index dde864a..6b103b2 100644
--- a/maven-core/src/test/java/org/apache/maven/project/artifact/DefaultMavenMetadataCacheTest.java
+++ b/maven-core/src/test/java/org/apache/maven/project/artifact/DefaultMavenMetadataCacheTest.java
@@ -19,15 +19,11 @@ package org.apache.maven.project.artifact;
  * under the License.
  */
 
-import java.io.File;
 import java.util.Arrays;
 import java.util.Collections;
 
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
-import org.apache.maven.artifact.repository.MavenArtifactRepository;
-import org.apache.maven.artifact.repository.layout.DefaultRepositoryLayout;
 import org.apache.maven.artifact.resolver.filter.ExcludesArtifactFilter;
 import org.apache.maven.project.artifact.DefaultMavenMetadataCache.CacheKey;
 import org.apache.maven.repository.DelegatingLocalArtifactRepository;
@@ -57,36 +53,19 @@ public class DefaultMavenMetadataCacheTest
         super.tearDown();
     }
 
-    @SuppressWarnings( "deprecation" )
     public void testCacheKey()
         throws Exception
     {
         Artifact a1 = repositorySystem.createArtifact( "testGroup", "testArtifact", "1.2.3", "jar" );
-        ArtifactRepository lr1 =
-            new DelegatingLocalArtifactRepository( repositorySystem.createDefaultLocalRepository() );
-
-        ArtifactRepository rr1 = new MavenArtifactRepository( "test",
-                                                              "file://" + new File( System.getProperty( "basedir", "" ),
-                                                                                    "src/test/remote-repo" ).toURI().
-                                                              getPath(),
-                                                              new DefaultRepositoryLayout(),
-                                                              new ArtifactRepositoryPolicy(),
-                                                              new ArtifactRepositoryPolicy() );
-
+        @SuppressWarnings( "deprecation" )
+        ArtifactRepository lr1 = new DelegatingLocalArtifactRepository( repositorySystem.createDefaultLocalRepository() );
+        ArtifactRepository rr1 = repositorySystem.createDefaultRemoteRepository();
         a1.setDependencyFilter( new ExcludesArtifactFilter( Arrays.asList( "foo" ) ) );
 
         Artifact a2 = repositorySystem.createArtifact( "testGroup", "testArtifact", "1.2.3", "jar" );
-        ArtifactRepository lr2 =
-            new DelegatingLocalArtifactRepository( repositorySystem.createDefaultLocalRepository() );
-
-        ArtifactRepository rr2 = new MavenArtifactRepository( "test",
-                                                              "file://" + new File( System.getProperty( "basedir", "" ),
-                                                                                    "src/test/remote-repo" ).toURI().
-                                                              getPath(),
-                                                              new DefaultRepositoryLayout(),
-                                                              new ArtifactRepositoryPolicy(),
-                                                              new ArtifactRepositoryPolicy() );
-
+        @SuppressWarnings( "deprecation" )
+        ArtifactRepository lr2 = new DelegatingLocalArtifactRepository( repositorySystem.createDefaultLocalRepository() );
+        ArtifactRepository rr2 = repositorySystem.createDefaultRemoteRepository();
         a2.setDependencyFilter( new ExcludesArtifactFilter( Arrays.asList( "foo" ) ) );
 
         // sanity checks
@@ -97,7 +76,6 @@ public class DefaultMavenMetadataCacheTest
         CacheKey k1 = new CacheKey( a1, false, lr1, Collections.singletonList( rr1 ) );
         CacheKey k2 = new CacheKey( a2, false, lr2, Collections.singletonList( rr2 ) );
 
-        assertEquals( k1.hashCode(), k2.hashCode() );
+        assertEquals(k1.hashCode(), k2.hashCode());
     }
-
 }

http://git-wip-us.apache.org/repos/asf/maven/blob/e3079b79/maven-core/src/test/java/org/apache/maven/repository/TestRepositorySystem.java
----------------------------------------------------------------------
diff --git a/maven-core/src/test/java/org/apache/maven/repository/TestRepositorySystem.java b/maven-core/src/test/java/org/apache/maven/repository/TestRepositorySystem.java
index d53dc62..0e054c6 100644
--- a/maven-core/src/test/java/org/apache/maven/repository/TestRepositorySystem.java
+++ b/maven-core/src/test/java/org/apache/maven/repository/TestRepositorySystem.java
@@ -106,15 +106,13 @@ public class TestRepositorySystem
         return createLocalRepository( new File( System.getProperty( "basedir", "" ), "target/local-repo" ).getAbsoluteFile() );
     }
 
-    /**
-     * @deprecated As of 3.4, Maven no longer falls back to a hard-coded default repository with identifier
-     * {@code central} if such a repository is not provided in the settings or the POM.
-     */
-    @Deprecated
     public ArtifactRepository createDefaultRemoteRepository()
         throws InvalidRepositoryException
     {
-        throw new UnsupportedOperationException();
+        return new MavenArtifactRepository( DEFAULT_REMOTE_REPO_ID, "file://"
+            + new File( System.getProperty( "basedir", "" ), "src/test/remote-repo" ).toURI().getPath(),
+                                            new DefaultRepositoryLayout(), new ArtifactRepositoryPolicy(),
+                                            new ArtifactRepositoryPolicy() );
     }
 
     public Artifact createDependencyArtifact( Dependency dependency )


[2/2] maven git commit: [MNG-6112] Central repository in the 4.0.0 super POM should declare update policy 'never'.

Posted by sc...@apache.org.
[MNG-6112] Central repository in the 4.0.0 super POM should declare update policy 'never'.


Project: http://git-wip-us.apache.org/repos/asf/maven/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven/commit/6b0b7a93
Tree: http://git-wip-us.apache.org/repos/asf/maven/tree/6b0b7a93
Diff: http://git-wip-us.apache.org/repos/asf/maven/diff/6b0b7a93

Branch: refs/heads/master
Commit: 6b0b7a932efd172dbd3ff9322e7f372fb0cdf5ee
Parents: e3079b7
Author: Christian Schulte <sc...@apache.org>
Authored: Fri Nov 11 23:49:36 2016 +0100
Committer: Christian Schulte <sc...@apache.org>
Committed: Fri Nov 11 23:49:36 2016 +0100

----------------------------------------------------------------------
 .../main/java/org/apache/maven/bridge/MavenRepositorySystem.java | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/6b0b7a93/maven-core/src/main/java/org/apache/maven/bridge/MavenRepositorySystem.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/bridge/MavenRepositorySystem.java b/maven-core/src/main/java/org/apache/maven/bridge/MavenRepositorySystem.java
index 147118c..23af3e8 100644
--- a/maven-core/src/main/java/org/apache/maven/bridge/MavenRepositorySystem.java
+++ b/maven-core/src/main/java/org/apache/maven/bridge/MavenRepositorySystem.java
@@ -572,8 +572,8 @@ public class MavenRepositorySystem
         throws Exception
     {
         return createRepository( RepositorySystem.DEFAULT_REMOTE_REPO_URL, RepositorySystem.DEFAULT_REMOTE_REPO_ID,
-                                 true, ArtifactRepositoryPolicy.UPDATE_POLICY_DAILY, false,
-                                 ArtifactRepositoryPolicy.UPDATE_POLICY_DAILY,
+                                 true, ArtifactRepositoryPolicy.UPDATE_POLICY_NEVER, false,
+                                 ArtifactRepositoryPolicy.UPDATE_POLICY_NEVER,
                                  ArtifactRepositoryPolicy.CHECKSUM_POLICY_WARN );
     }