You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ah...@apache.org on 2015/04/01 02:23:43 UTC

[01/50] [abbrv] maven git commit: mechanism to carryover session scope seeds from one thread to another

Repository: maven
Updated Branches:
  refs/heads/slf4j-log4j2 bc5e99f9f -> baf99442f (forced update)


mechanism to carryover session scope seeds from one thread to another

Signed-off-by: Igor Fedorenko <if...@apache.org>


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

Branch: refs/heads/slf4j-log4j2
Commit: 45563ff5cbfd066761913ae35a4e3e8e6e25e83c
Parents: 117df85
Author: Igor Fedorenko <if...@apache.org>
Authored: Thu Feb 5 12:07:41 2015 -0500
Committer: Igor Fedorenko <if...@apache.org>
Committed: Fri Feb 20 10:26:14 2015 -0500

----------------------------------------------------------------------
 .../internal/LifecycleModuleBuilder.java        |  2 +-
 .../lifecycle/internal/LifecycleStarter.java    |  8 ++++-
 .../lifecycle/internal/ReactorContext.java      | 13 +++++++-
 .../session/scope/internal/SessionScope.java    | 33 ++++++++++++++++++++
 4 files changed, 53 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/45563ff5/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleModuleBuilder.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleModuleBuilder.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleModuleBuilder.java
index d987a30..f9e6e6a 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleModuleBuilder.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleModuleBuilder.java
@@ -89,7 +89,7 @@ public class LifecycleModuleBuilder
 
         // session may be different from rootSession seeded in DefaultMaven
         // explicitly seed the right session here to make sure it is used by Guice
-        sessionScope.enter();
+        sessionScope.enter( reactorContext.getSessionScopeMemento() );
         sessionScope.seed( MavenSession.class, session );
         try
         {

http://git-wip-us.apache.org/repos/asf/maven/blob/45563ff5/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleStarter.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleStarter.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleStarter.java
index cc00ff9..55217dc 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleStarter.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleStarter.java
@@ -30,6 +30,7 @@ import org.apache.maven.lifecycle.MissingProjectException;
 import org.apache.maven.lifecycle.NoGoalSpecifiedException;
 import org.apache.maven.lifecycle.internal.builder.Builder;
 import org.apache.maven.lifecycle.internal.builder.BuilderNotFoundException;
+import org.apache.maven.session.scope.internal.SessionScope;
 import org.codehaus.plexus.component.annotations.Component;
 import org.codehaus.plexus.component.annotations.Requirement;
 import org.codehaus.plexus.logging.Logger;
@@ -64,6 +65,9 @@ public class LifecycleStarter
 
     @Requirement
     private Map<String, Builder> builders;
+    
+    @Requirement
+    private SessionScope sessionScope;
 
     public void execute( MavenSession session )
     {
@@ -102,7 +106,9 @@ public class LifecycleStarter
 
             ClassLoader oldContextClassLoader = Thread.currentThread().getContextClassLoader();
             ReactorBuildStatus reactorBuildStatus = new ReactorBuildStatus( session.getProjectDependencyGraph() );
-            reactorContext = new ReactorContext( result, projectIndex, oldContextClassLoader, reactorBuildStatus );
+            reactorContext =
+                new ReactorContext( result, projectIndex, oldContextClassLoader, reactorBuildStatus,
+                                    sessionScope.memento() );
 
             String builderId = session.getRequest().getBuilderId();
             Builder builder = builders.get( builderId );

http://git-wip-us.apache.org/repos/asf/maven/blob/45563ff5/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ReactorContext.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ReactorContext.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ReactorContext.java
index a6adc95..feda5fc 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ReactorContext.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ReactorContext.java
@@ -20,6 +20,7 @@ package org.apache.maven.lifecycle.internal;
  */
 
 import org.apache.maven.execution.MavenExecutionResult;
+import org.apache.maven.session.scope.internal.SessionScope;
 
 /**
  * Context that is fixed for the entire reactor build.
@@ -39,14 +40,17 @@ public class ReactorContext
 
     private final ReactorBuildStatus reactorBuildStatus;
 
+    private final SessionScope.Memento sessionScope;
 
     public ReactorContext( MavenExecutionResult result, ProjectIndex projectIndex,
-                           ClassLoader originalContextClassLoader, ReactorBuildStatus reactorBuildStatus )
+                           ClassLoader originalContextClassLoader, ReactorBuildStatus reactorBuildStatus,
+                           SessionScope.Memento sessionScope )
     {
         this.result = result;
         this.projectIndex = projectIndex;
         this.originalContextClassLoader = originalContextClassLoader;
         this.reactorBuildStatus = reactorBuildStatus;
+        this.sessionScope = sessionScope;
     }
 
     public ReactorBuildStatus getReactorBuildStatus()
@@ -69,4 +73,11 @@ public class ReactorContext
         return originalContextClassLoader;
     }
 
+    /**
+     * @since 3.2.6
+     */
+    public SessionScope.Memento getSessionScopeMemento()
+    {
+        return sessionScope;
+    }
 }

http://git-wip-us.apache.org/repos/asf/maven/blob/45563ff5/maven-core/src/main/java/org/apache/maven/session/scope/internal/SessionScope.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/session/scope/internal/SessionScope.java b/maven-core/src/main/java/org/apache/maven/session/scope/internal/SessionScope.java
index ae62ea2..5a38e6e 100644
--- a/maven-core/src/main/java/org/apache/maven/session/scope/internal/SessionScope.java
+++ b/maven-core/src/main/java/org/apache/maven/session/scope/internal/SessionScope.java
@@ -19,9 +19,11 @@ package org.apache.maven.session.scope.internal;
  * under the License.
  */
 
+import java.util.Collections;
 import java.util.LinkedList;
 import java.util.Map;
 
+import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.Maps;
 import com.google.inject.Key;
 import com.google.inject.OutOfScopeException;
@@ -32,6 +34,19 @@ import com.google.inject.util.Providers;
 public class SessionScope
     implements Scope
 {
+    /**
+     * @since 3.2.6
+     */
+    public static class Memento
+    {
+        final Map<Key<?>, Provider<?>> seeded;
+
+        Memento( final Map<Key<?>, Provider<?>> seeded )
+        {
+            this.seeded = ImmutableMap.copyOf( seeded );
+        }
+    }
+
     private static final Provider<Object> SEEDED_KEY_PROVIDER = new Provider<Object>()
     {
         public Object get()
@@ -60,6 +75,15 @@ public class SessionScope
         stack.addFirst( new ScopeState() );
     }
 
+    /**
+     * @since 3.2.6
+     */
+    public void enter( Memento memento )
+    {
+        enter();
+        getScopeState().seeded.putAll( memento.seeded );
+    }
+
     private ScopeState getScopeState()
     {
         LinkedList<ScopeState> stack = values.get();
@@ -84,6 +108,15 @@ public class SessionScope
         }
     }
 
+    /**
+     * @since 3.2.6
+     */
+    public Memento memento()
+    {
+        LinkedList<ScopeState> stack = values.get();
+        return new Memento( stack != null ? stack.getFirst().seeded : Collections.<Key<?>, Provider<?>>emptyMap() );
+    }
+
     public <T> void seed( Class<T> clazz, Provider<T> value )
     {
         getScopeState().seeded.put( Key.get( clazz ), value );


[08/50] [abbrv] maven git commit: MNG-5771 updated bootstrap ant build to match pom.xml changes

Posted by ah...@apache.org.
MNG-5771 updated bootstrap ant build to match pom.xml changes

Signed-off-by: Igor Fedorenko <if...@apache.org>


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

Branch: refs/heads/slf4j-log4j2
Commit: eaef349685ab8e640977651b554a8a6a774de700
Parents: bdb4c32
Author: Igor Fedorenko <if...@apache.org>
Authored: Fri Feb 20 14:45:06 2015 -0500
Committer: Igor Fedorenko <if...@apache.org>
Committed: Fri Feb 20 14:45:06 2015 -0500

----------------------------------------------------------------------
 build.xml | 1 +
 1 file changed, 1 insertion(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/eaef3496/build.xml
----------------------------------------------------------------------
diff --git a/build.xml b/build.xml
index 01d5139..a5dd90a 100644
--- a/build.xml
+++ b/build.xml
@@ -212,6 +212,7 @@ Do you want to continue?</input>
     <modello file="maven-repository-metadata/src/main/mdo/metadata.mdo" version="1.1.0" />
     <modello file="maven-compat/src/main/mdo/profiles.mdo" />
     <modello file="maven-compat/src/main/mdo/paramdoc.mdo" />
+    <modello file="maven-embedder/src/main/mdo/core-extensions.mdo" />
   </target>
 
   <target name="compile-boot" depends="generate-sources" description="compiles the bootstrap sources">


[05/50] [abbrv] maven git commit: extracted RepositorySystemSessionFactory from DefaultMaven

Posted by ah...@apache.org.
extracted RepositorySystemSessionFactory from DefaultMaven

Signed-off-by: Igor Fedorenko <if...@apache.org>


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

Branch: refs/heads/slf4j-log4j2
Commit: 5f150940c105d517108616aa184a5d276985376f
Parents: 586e65f
Author: Igor Fedorenko <if...@apache.org>
Authored: Mon Feb 9 16:56:33 2015 -0500
Committer: Igor Fedorenko <if...@apache.org>
Committed: Fri Feb 20 10:26:15 2015 -0500

----------------------------------------------------------------------
 .../java/org/apache/maven/DefaultMaven.java     | 210 +--------------
 .../apache/maven/LoggingRepositoryListener.java | 141 ----------
 .../DefaultRepositorySystemSessionFactory.java  | 259 +++++++++++++++++++
 .../aether/LoggingRepositoryListener.java       | 141 ++++++++++
 4 files changed, 404 insertions(+), 347 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/5f150940/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/DefaultMaven.java b/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
index ee82c1d..83d6f4f 100644
--- a/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
+++ b/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
@@ -20,8 +20,6 @@ package org.apache.maven;
  */
 
 import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collection;
@@ -33,17 +31,15 @@ import java.util.LinkedHashMap;
 import java.util.LinkedHashSet;
 import java.util.List;
 import java.util.Map;
-import java.util.Properties;
 
 import org.apache.maven.artifact.ArtifactUtils;
-import org.apache.maven.artifact.handler.manager.ArtifactHandlerManager;
-import org.apache.maven.eventspy.internal.EventSpyDispatcher;
 import org.apache.maven.execution.DefaultMavenExecutionResult;
 import org.apache.maven.execution.ExecutionEvent;
 import org.apache.maven.execution.MavenExecutionRequest;
 import org.apache.maven.execution.MavenExecutionResult;
 import org.apache.maven.execution.MavenSession;
 import org.apache.maven.execution.ProjectDependencyGraph;
+import org.apache.maven.internal.aether.DefaultRepositorySystemSessionFactory;
 import org.apache.maven.lifecycle.internal.ExecutionEventCatapult;
 import org.apache.maven.lifecycle.internal.LifecycleStarter;
 import org.apache.maven.model.Plugin;
@@ -58,41 +54,18 @@ import org.apache.maven.project.ProjectBuildingException;
 import org.apache.maven.project.ProjectBuildingRequest;
 import org.apache.maven.project.ProjectBuildingResult;
 import org.apache.maven.repository.LocalRepositoryNotAccessibleException;
-import org.apache.maven.repository.internal.MavenRepositorySystemUtils;
 import org.apache.maven.session.scope.internal.SessionScope;
-import org.apache.maven.settings.Mirror;
-import org.apache.maven.settings.Proxy;
-import org.apache.maven.settings.Server;
-import org.apache.maven.settings.building.SettingsProblem;
-import org.apache.maven.settings.crypto.DefaultSettingsDecryptionRequest;
-import org.apache.maven.settings.crypto.SettingsDecrypter;
-import org.apache.maven.settings.crypto.SettingsDecryptionResult;
 import org.codehaus.plexus.PlexusContainer;
 import org.codehaus.plexus.component.annotations.Component;
 import org.codehaus.plexus.component.annotations.Requirement;
 import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
-import org.codehaus.plexus.configuration.xml.XmlPlexusConfiguration;
 import org.codehaus.plexus.logging.Logger;
-import org.codehaus.plexus.util.IOUtil;
 import org.codehaus.plexus.util.StringUtils;
 import org.codehaus.plexus.util.dag.CycleDetectedException;
-import org.codehaus.plexus.util.xml.Xpp3Dom;
-import org.eclipse.aether.ConfigurationProperties;
 import org.eclipse.aether.DefaultRepositorySystemSession;
-import org.eclipse.aether.RepositorySystem;
 import org.eclipse.aether.RepositorySystemSession;
-import org.eclipse.aether.repository.LocalRepository;
-import org.eclipse.aether.repository.NoLocalRepositoryManagerException;
-import org.eclipse.aether.repository.RepositoryPolicy;
 import org.eclipse.aether.repository.WorkspaceReader;
-import org.eclipse.aether.resolution.ResolutionErrorPolicy;
-import org.eclipse.aether.spi.localrepo.LocalRepositoryManagerFactory;
-import org.eclipse.aether.util.repository.AuthenticationBuilder;
 import org.eclipse.aether.util.repository.ChainedWorkspaceReader;
-import org.eclipse.aether.util.repository.DefaultAuthenticationSelector;
-import org.eclipse.aether.util.repository.DefaultMirrorSelector;
-import org.eclipse.aether.util.repository.DefaultProxySelector;
-import org.eclipse.aether.util.repository.SimpleResolutionErrorPolicy;
 
 /**
  * @author Jason van Zyl
@@ -118,28 +91,13 @@ public class DefaultMaven
     private ExecutionEventCatapult eventCatapult;
 
     @Requirement
-    private ArtifactHandlerManager artifactHandlerManager;
-
-    @Requirement( optional = true, hint = "ide" )
-    private WorkspaceReader workspaceRepository;
-
-    @Requirement
-    private RepositorySystem repoSystem;
-
-    @Requirement( optional = true, hint = "simple" )
-    private LocalRepositoryManagerFactory simpleLocalRepoMgrFactory;
-
-    @Requirement
-    private SettingsDecrypter settingsDecrypter;
-
-    @Requirement
     private LegacySupport legacySupport;
 
     @Requirement
-    private EventSpyDispatcher eventSpyDispatcher;
+    private SessionScope sessionScope;
 
     @Requirement
-    private SessionScope sessionScope;
+    private DefaultRepositorySystemSessionFactory repositorySessionFactory;
 
     @Override
     public MavenExecutionResult execute( MavenExecutionRequest request )
@@ -393,167 +351,7 @@ public class DefaultMaven
 
     public RepositorySystemSession newRepositorySession( MavenExecutionRequest request )
     {
-        DefaultRepositorySystemSession session = MavenRepositorySystemUtils.newSession();
-
-        session.setCache( request.getRepositoryCache() );
-
-        Map<Object, Object> configProps = new LinkedHashMap<Object, Object>();
-        configProps.put( ConfigurationProperties.USER_AGENT, getUserAgent() );
-        configProps.put( ConfigurationProperties.INTERACTIVE, request.isInteractiveMode() );
-        configProps.putAll( request.getSystemProperties() );
-        configProps.putAll( request.getUserProperties() );
-
-        session.setOffline( request.isOffline() );
-        session.setChecksumPolicy( request.getGlobalChecksumPolicy() );
-        if ( request.isNoSnapshotUpdates() )
-        {
-            session.setUpdatePolicy( RepositoryPolicy.UPDATE_POLICY_NEVER );
-        }
-        else if ( request.isUpdateSnapshots() )
-        {
-            session.setUpdatePolicy( RepositoryPolicy.UPDATE_POLICY_ALWAYS );
-        }
-        else
-        {
-            session.setUpdatePolicy( null );
-        }
-
-        int errorPolicy = 0;
-        errorPolicy |= request.isCacheNotFound() ? ResolutionErrorPolicy.CACHE_NOT_FOUND : 0;
-        errorPolicy |= request.isCacheTransferError() ? ResolutionErrorPolicy.CACHE_TRANSFER_ERROR : 0;
-        session.setResolutionErrorPolicy( new SimpleResolutionErrorPolicy( errorPolicy, errorPolicy
-            | ResolutionErrorPolicy.CACHE_NOT_FOUND ) );
-
-        session.setArtifactTypeRegistry( RepositoryUtils.newArtifactTypeRegistry( artifactHandlerManager ) );
-
-        LocalRepository localRepo = new LocalRepository( request.getLocalRepository().getBasedir() );
-
-        if ( request.isUseLegacyLocalRepository() )
-        {
-            logger.warn( "Disabling enhanced local repository: using legacy is strongly discouraged to ensure"
-                + " build reproducibility." );
-            try
-            {
-                session.setLocalRepositoryManager( simpleLocalRepoMgrFactory.newInstance( session, localRepo ) );
-            }
-            catch ( NoLocalRepositoryManagerException e )
-            {
-
-                logger.warn( "Failed to configure legacy local repository: back to default" );
-                session.setLocalRepositoryManager( repoSystem.newLocalRepositoryManager( session, localRepo ) );
-            }
-        }
-        else
-        {
-            session.setLocalRepositoryManager( repoSystem.newLocalRepositoryManager( session, localRepo ) );
-        }
-
-        if ( request.getWorkspaceReader() != null )
-        {
-            session.setWorkspaceReader( request.getWorkspaceReader() );
-        }
-        else
-        {
-            session.setWorkspaceReader( workspaceRepository );
-        }
-
-        DefaultSettingsDecryptionRequest decrypt = new DefaultSettingsDecryptionRequest();
-        decrypt.setProxies( request.getProxies() );
-        decrypt.setServers( request.getServers() );
-        SettingsDecryptionResult decrypted = settingsDecrypter.decrypt( decrypt );
-
-        if ( logger.isDebugEnabled() )
-        {
-            for ( SettingsProblem problem : decrypted.getProblems() )
-            {
-                logger.debug( problem.getMessage(), problem.getException() );
-            }
-        }
-
-        DefaultMirrorSelector mirrorSelector = new DefaultMirrorSelector();
-        for ( Mirror mirror : request.getMirrors() )
-        {
-            mirrorSelector.add( mirror.getId(), mirror.getUrl(), mirror.getLayout(), false, mirror.getMirrorOf(),
-                                mirror.getMirrorOfLayouts() );
-        }
-        session.setMirrorSelector( mirrorSelector );
-
-        DefaultProxySelector proxySelector = new DefaultProxySelector();
-        for ( Proxy proxy : decrypted.getProxies() )
-        {
-            AuthenticationBuilder authBuilder = new AuthenticationBuilder();
-            authBuilder.addUsername( proxy.getUsername() ).addPassword( proxy.getPassword() );
-            proxySelector.add( new org.eclipse.aether.repository.Proxy( proxy.getProtocol(), proxy.getHost(),
-                                                                        proxy.getPort(), authBuilder.build() ),
-                               proxy.getNonProxyHosts() );
-        }
-        session.setProxySelector( proxySelector );
-
-        DefaultAuthenticationSelector authSelector = new DefaultAuthenticationSelector();
-        for ( Server server : decrypted.getServers() )
-        {
-            AuthenticationBuilder authBuilder = new AuthenticationBuilder();
-            authBuilder.addUsername( server.getUsername() ).addPassword( server.getPassword() );
-            authBuilder.addPrivateKey( server.getPrivateKey(), server.getPassphrase() );
-            authSelector.add( server.getId(), authBuilder.build() );
-
-            if ( server.getConfiguration() != null )
-            {
-                Xpp3Dom dom = (Xpp3Dom) server.getConfiguration();
-                for ( int i = dom.getChildCount() - 1; i >= 0; i-- )
-                {
-                    Xpp3Dom child = dom.getChild( i );
-                    if ( "wagonProvider".equals( child.getName() ) )
-                    {
-                        dom.removeChild( i );
-                    }
-                }
-
-                XmlPlexusConfiguration config = new XmlPlexusConfiguration( dom );
-                configProps.put( "aether.connector.wagon.config." + server.getId(), config );
-            }
-
-            configProps.put( "aether.connector.perms.fileMode." + server.getId(), server.getFilePermissions() );
-            configProps.put( "aether.connector.perms.dirMode." + server.getId(), server.getDirectoryPermissions() );
-        }
-        session.setAuthenticationSelector( authSelector );
-
-        session.setTransferListener( request.getTransferListener() );
-
-        session.setRepositoryListener( eventSpyDispatcher.chainListener( new LoggingRepositoryListener( logger ) ) );
-
-        session.setUserProperties( request.getUserProperties() );
-        session.setSystemProperties( request.getSystemProperties() );
-        session.setConfigProperties( configProps );
-
-        return session;
-    }
-
-    private String getUserAgent()
-    {
-        return "Apache-Maven/" + getMavenVersion() + " (Java " + System.getProperty( "java.version" ) + "; "
-            + System.getProperty( "os.name" ) + " " + System.getProperty( "os.version" ) + ")";
-    }
-
-    private String getMavenVersion()
-    {
-        Properties props = new Properties();
-
-        InputStream is = getClass().getResourceAsStream( "/META-INF/maven/org.apache.maven/maven-core/pom.properties" );
-        if ( is != null )
-        {
-            try
-            {
-                props.load( is );
-            }
-            catch ( IOException e )
-            {
-                logger.debug( "Failed to read Maven version", e );
-            }
-            IOUtil.close( is );
-        }
-
-        return props.getProperty( "version", "unknown-version" );
+        return repositorySessionFactory.newRepositorySession( request );
     }
 
     private void validateLocalRepository( MavenExecutionRequest request )

http://git-wip-us.apache.org/repos/asf/maven/blob/5f150940/maven-core/src/main/java/org/apache/maven/LoggingRepositoryListener.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/LoggingRepositoryListener.java b/maven-core/src/main/java/org/apache/maven/LoggingRepositoryListener.java
deleted file mode 100644
index d176b9d..0000000
--- a/maven-core/src/main/java/org/apache/maven/LoggingRepositoryListener.java
+++ /dev/null
@@ -1,141 +0,0 @@
-package org.apache.maven;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import java.io.FileNotFoundException;
-
-import org.codehaus.plexus.logging.Logger;
-import org.eclipse.aether.AbstractRepositoryListener;
-import org.eclipse.aether.RepositoryEvent;
-import org.eclipse.aether.transfer.MetadataNotFoundException;
-
-/**
- * @author Benjamin Bentmann
- */
-class LoggingRepositoryListener
-    extends AbstractRepositoryListener
-{
-
-    private final Logger logger;
-
-    public LoggingRepositoryListener( Logger logger )
-    {
-        this.logger = logger;
-    }
-
-    @Override
-    public void artifactInstalling( RepositoryEvent event )
-    {
-        logger.info( "Installing " + event.getArtifact().getFile() + " to " + event.getFile() );
-    }
-
-    @Override
-    public void metadataInstalling( RepositoryEvent event )
-    {
-        logger.debug( "Installing " + event.getMetadata() + " to " + event.getFile() );
-    }
-
-    @Override
-    public void metadataResolved( RepositoryEvent event )
-    {
-        Exception e = event.getException();
-        if ( e != null )
-        {
-            if ( e instanceof MetadataNotFoundException )
-            {
-                logger.debug( e.getMessage() );
-            }
-            else if ( logger.isDebugEnabled() )
-            {
-                logger.warn( e.getMessage(), e );
-            }
-            else
-            {
-                logger.warn( e.getMessage() );
-            }
-        }
-    }
-
-    @Override
-    public void metadataInvalid( RepositoryEvent event )
-    {
-        Exception exception = event.getException();
-
-        StringBuilder buffer = new StringBuilder( 256 );
-        buffer.append( "The metadata " );
-        if ( event.getMetadata().getFile() != null )
-        {
-            buffer.append( event.getMetadata().getFile() );
-        }
-        else
-        {
-            buffer.append( event.getMetadata() );
-        }
-
-        if ( exception instanceof FileNotFoundException )
-        {
-            buffer.append( " is inaccessible" );
-        }
-        else
-        {
-            buffer.append( " is invalid" );
-        }
-
-        if ( exception != null )
-        {
-            buffer.append( ": " );
-            buffer.append( exception.getMessage() );
-        }
-
-        if ( logger.isDebugEnabled() )
-        {
-            logger.warn( buffer.toString(), exception );
-        }
-        else
-        {
-            logger.warn( buffer.toString() );
-        }
-    }
-
-    @Override
-    public void artifactDescriptorInvalid( RepositoryEvent event )
-    {
-        StringBuilder buffer = new StringBuilder( 256 );
-        buffer.append( "The POM for " );
-        buffer.append( event.getArtifact() );
-        buffer.append( " is invalid, transitive dependencies (if any) will not be available" );
-
-        if ( logger.isDebugEnabled() )
-        {
-            logger.warn( buffer + ": " + event.getException().getMessage() );
-        }
-        else
-        {
-            logger.warn( buffer + ", enable debug logging for more details" );
-        }
-    }
-
-    @Override
-    public void artifactDescriptorMissing( RepositoryEvent event )
-    {
-        logger.warn( "The POM for " + event.getArtifact() + " is missing, no dependency information available" );
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/maven/blob/5f150940/maven-core/src/main/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactory.java
----------------------------------------------------------------------
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
new file mode 100644
index 0000000..d049caf
--- /dev/null
+++ b/maven-core/src/main/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactory.java
@@ -0,0 +1,259 @@
+package org.apache.maven.internal.aether;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.LinkedHashMap;
+import java.util.Map;
+import java.util.Properties;
+
+import javax.inject.Inject;
+import javax.inject.Named;
+
+import org.apache.maven.RepositoryUtils;
+import org.apache.maven.artifact.handler.manager.ArtifactHandlerManager;
+import org.apache.maven.eventspy.internal.EventSpyDispatcher;
+import org.apache.maven.execution.MavenExecutionRequest;
+import org.apache.maven.repository.internal.MavenRepositorySystemUtils;
+import org.apache.maven.settings.Mirror;
+import org.apache.maven.settings.Proxy;
+import org.apache.maven.settings.Server;
+import org.apache.maven.settings.building.SettingsProblem;
+import org.apache.maven.settings.crypto.DefaultSettingsDecryptionRequest;
+import org.apache.maven.settings.crypto.SettingsDecrypter;
+import org.apache.maven.settings.crypto.SettingsDecryptionResult;
+import org.codehaus.plexus.configuration.xml.XmlPlexusConfiguration;
+import org.codehaus.plexus.logging.Logger;
+import org.codehaus.plexus.util.IOUtil;
+import org.codehaus.plexus.util.xml.Xpp3Dom;
+import org.eclipse.aether.ConfigurationProperties;
+import org.eclipse.aether.DefaultRepositorySystemSession;
+import org.eclipse.aether.RepositorySystem;
+import org.eclipse.aether.repository.LocalRepository;
+import org.eclipse.aether.repository.NoLocalRepositoryManagerException;
+import org.eclipse.aether.repository.RepositoryPolicy;
+import org.eclipse.aether.repository.WorkspaceReader;
+import org.eclipse.aether.resolution.ResolutionErrorPolicy;
+import org.eclipse.aether.spi.localrepo.LocalRepositoryManagerFactory;
+import org.eclipse.aether.util.repository.AuthenticationBuilder;
+import org.eclipse.aether.util.repository.DefaultAuthenticationSelector;
+import org.eclipse.aether.util.repository.DefaultMirrorSelector;
+import org.eclipse.aether.util.repository.DefaultProxySelector;
+import org.eclipse.aether.util.repository.SimpleResolutionErrorPolicy;
+import org.eclipse.sisu.Nullable;
+
+/**
+ * @since 3.2.6
+ */
+@Named
+public class DefaultRepositorySystemSessionFactory
+{
+    @Inject
+    private Logger logger;
+
+    @Inject
+    private ArtifactHandlerManager artifactHandlerManager;
+
+    @Inject
+    private RepositorySystem repoSystem;
+
+    @Inject
+    @Nullable
+    @Named( "simple" )
+    private LocalRepositoryManagerFactory simpleLocalRepoMgrFactory;
+
+    @Inject
+    @Nullable
+    @Named( "ide" )
+    private WorkspaceReader workspaceRepository;
+
+    @Inject
+    private SettingsDecrypter settingsDecrypter;
+
+    @Inject
+    private EventSpyDispatcher eventSpyDispatcher;
+
+    public DefaultRepositorySystemSession newRepositorySession( MavenExecutionRequest request )
+    {
+        DefaultRepositorySystemSession session = MavenRepositorySystemUtils.newSession();
+
+        session.setCache( request.getRepositoryCache() );
+
+        Map<Object, Object> configProps = new LinkedHashMap<Object, Object>();
+        configProps.put( ConfigurationProperties.USER_AGENT, getUserAgent() );
+        configProps.put( ConfigurationProperties.INTERACTIVE, request.isInteractiveMode() );
+        configProps.putAll( request.getSystemProperties() );
+        configProps.putAll( request.getUserProperties() );
+
+        session.setOffline( request.isOffline() );
+        session.setChecksumPolicy( request.getGlobalChecksumPolicy() );
+        if ( request.isNoSnapshotUpdates() )
+        {
+            session.setUpdatePolicy( RepositoryPolicy.UPDATE_POLICY_NEVER );
+        }
+        else if ( request.isUpdateSnapshots() )
+        {
+            session.setUpdatePolicy( RepositoryPolicy.UPDATE_POLICY_ALWAYS );
+        }
+        else
+        {
+            session.setUpdatePolicy( null );
+        }
+
+        int errorPolicy = 0;
+        errorPolicy |= request.isCacheNotFound() ? ResolutionErrorPolicy.CACHE_NOT_FOUND : 0;
+        errorPolicy |= request.isCacheTransferError() ? ResolutionErrorPolicy.CACHE_TRANSFER_ERROR : 0;
+        session.setResolutionErrorPolicy( new SimpleResolutionErrorPolicy( errorPolicy, errorPolicy
+            | ResolutionErrorPolicy.CACHE_NOT_FOUND ) );
+
+        session.setArtifactTypeRegistry( RepositoryUtils.newArtifactTypeRegistry( artifactHandlerManager ) );
+
+        LocalRepository localRepo = new LocalRepository( request.getLocalRepository().getBasedir() );
+
+        if ( request.isUseLegacyLocalRepository() )
+        {
+            logger.warn( "Disabling enhanced local repository: using legacy is strongly discouraged to ensure"
+                + " build reproducibility." );
+            try
+            {
+                session.setLocalRepositoryManager( simpleLocalRepoMgrFactory.newInstance( session, localRepo ) );
+            }
+            catch ( NoLocalRepositoryManagerException e )
+            {
+
+                logger.warn( "Failed to configure legacy local repository: back to default" );
+                session.setLocalRepositoryManager( repoSystem.newLocalRepositoryManager( session, localRepo ) );
+            }
+        }
+        else
+        {
+            session.setLocalRepositoryManager( repoSystem.newLocalRepositoryManager( session, localRepo ) );
+        }
+
+        if ( request.getWorkspaceReader() != null )
+        {
+            session.setWorkspaceReader( request.getWorkspaceReader() );
+        }
+        else
+        {
+            session.setWorkspaceReader( workspaceRepository );
+        }
+
+        DefaultSettingsDecryptionRequest decrypt = new DefaultSettingsDecryptionRequest();
+        decrypt.setProxies( request.getProxies() );
+        decrypt.setServers( request.getServers() );
+        SettingsDecryptionResult decrypted = settingsDecrypter.decrypt( decrypt );
+
+        if ( logger.isDebugEnabled() )
+        {
+            for ( SettingsProblem problem : decrypted.getProblems() )
+            {
+                logger.debug( problem.getMessage(), problem.getException() );
+            }
+        }
+
+        DefaultMirrorSelector mirrorSelector = new DefaultMirrorSelector();
+        for ( Mirror mirror : request.getMirrors() )
+        {
+            mirrorSelector.add( mirror.getId(), mirror.getUrl(), mirror.getLayout(), false, mirror.getMirrorOf(),
+                                mirror.getMirrorOfLayouts() );
+        }
+        session.setMirrorSelector( mirrorSelector );
+
+        DefaultProxySelector proxySelector = new DefaultProxySelector();
+        for ( Proxy proxy : decrypted.getProxies() )
+        {
+            AuthenticationBuilder authBuilder = new AuthenticationBuilder();
+            authBuilder.addUsername( proxy.getUsername() ).addPassword( proxy.getPassword() );
+            proxySelector.add( new org.eclipse.aether.repository.Proxy( proxy.getProtocol(), proxy.getHost(),
+                                                                        proxy.getPort(), authBuilder.build() ),
+                               proxy.getNonProxyHosts() );
+        }
+        session.setProxySelector( proxySelector );
+
+        DefaultAuthenticationSelector authSelector = new DefaultAuthenticationSelector();
+        for ( Server server : decrypted.getServers() )
+        {
+            AuthenticationBuilder authBuilder = new AuthenticationBuilder();
+            authBuilder.addUsername( server.getUsername() ).addPassword( server.getPassword() );
+            authBuilder.addPrivateKey( server.getPrivateKey(), server.getPassphrase() );
+            authSelector.add( server.getId(), authBuilder.build() );
+
+            if ( server.getConfiguration() != null )
+            {
+                Xpp3Dom dom = (Xpp3Dom) server.getConfiguration();
+                for ( int i = dom.getChildCount() - 1; i >= 0; i-- )
+                {
+                    Xpp3Dom child = dom.getChild( i );
+                    if ( "wagonProvider".equals( child.getName() ) )
+                    {
+                        dom.removeChild( i );
+                    }
+                }
+
+                XmlPlexusConfiguration config = new XmlPlexusConfiguration( dom );
+                configProps.put( "aether.connector.wagon.config." + server.getId(), config );
+            }
+
+            configProps.put( "aether.connector.perms.fileMode." + server.getId(), server.getFilePermissions() );
+            configProps.put( "aether.connector.perms.dirMode." + server.getId(), server.getDirectoryPermissions() );
+        }
+        session.setAuthenticationSelector( authSelector );
+
+        session.setTransferListener( request.getTransferListener() );
+
+        session.setRepositoryListener( eventSpyDispatcher.chainListener( new LoggingRepositoryListener( logger ) ) );
+
+        session.setUserProperties( request.getUserProperties() );
+        session.setSystemProperties( request.getSystemProperties() );
+        session.setConfigProperties( configProps );
+
+        return session;
+    }
+
+    private String getUserAgent()
+    {
+        return "Apache-Maven/" + getMavenVersion() + " (Java " + System.getProperty( "java.version" ) + "; "
+            + System.getProperty( "os.name" ) + " " + System.getProperty( "os.version" ) + ")";
+    }
+
+    private String getMavenVersion()
+    {
+        Properties props = new Properties();
+
+        InputStream is = getClass().getResourceAsStream( "/META-INF/maven/org.apache.maven/maven-core/pom.properties" );
+        if ( is != null )
+        {
+            try
+            {
+                props.load( is );
+            }
+            catch ( IOException e )
+            {
+                logger.debug( "Failed to read Maven version", e );
+            }
+            IOUtil.close( is );
+        }
+
+        return props.getProperty( "version", "unknown-version" );
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/maven/blob/5f150940/maven-core/src/main/java/org/apache/maven/internal/aether/LoggingRepositoryListener.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/internal/aether/LoggingRepositoryListener.java b/maven-core/src/main/java/org/apache/maven/internal/aether/LoggingRepositoryListener.java
new file mode 100644
index 0000000..7b67c3b
--- /dev/null
+++ b/maven-core/src/main/java/org/apache/maven/internal/aether/LoggingRepositoryListener.java
@@ -0,0 +1,141 @@
+package org.apache.maven.internal.aether;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.io.FileNotFoundException;
+
+import org.codehaus.plexus.logging.Logger;
+import org.eclipse.aether.AbstractRepositoryListener;
+import org.eclipse.aether.RepositoryEvent;
+import org.eclipse.aether.transfer.MetadataNotFoundException;
+
+/**
+ * @author Benjamin Bentmann
+ */
+class LoggingRepositoryListener
+    extends AbstractRepositoryListener
+{
+
+    private final Logger logger;
+
+    public LoggingRepositoryListener( Logger logger )
+    {
+        this.logger = logger;
+    }
+
+    @Override
+    public void artifactInstalling( RepositoryEvent event )
+    {
+        logger.info( "Installing " + event.getArtifact().getFile() + " to " + event.getFile() );
+    }
+
+    @Override
+    public void metadataInstalling( RepositoryEvent event )
+    {
+        logger.debug( "Installing " + event.getMetadata() + " to " + event.getFile() );
+    }
+
+    @Override
+    public void metadataResolved( RepositoryEvent event )
+    {
+        Exception e = event.getException();
+        if ( e != null )
+        {
+            if ( e instanceof MetadataNotFoundException )
+            {
+                logger.debug( e.getMessage() );
+            }
+            else if ( logger.isDebugEnabled() )
+            {
+                logger.warn( e.getMessage(), e );
+            }
+            else
+            {
+                logger.warn( e.getMessage() );
+            }
+        }
+    }
+
+    @Override
+    public void metadataInvalid( RepositoryEvent event )
+    {
+        Exception exception = event.getException();
+
+        StringBuilder buffer = new StringBuilder( 256 );
+        buffer.append( "The metadata " );
+        if ( event.getMetadata().getFile() != null )
+        {
+            buffer.append( event.getMetadata().getFile() );
+        }
+        else
+        {
+            buffer.append( event.getMetadata() );
+        }
+
+        if ( exception instanceof FileNotFoundException )
+        {
+            buffer.append( " is inaccessible" );
+        }
+        else
+        {
+            buffer.append( " is invalid" );
+        }
+
+        if ( exception != null )
+        {
+            buffer.append( ": " );
+            buffer.append( exception.getMessage() );
+        }
+
+        if ( logger.isDebugEnabled() )
+        {
+            logger.warn( buffer.toString(), exception );
+        }
+        else
+        {
+            logger.warn( buffer.toString() );
+        }
+    }
+
+    @Override
+    public void artifactDescriptorInvalid( RepositoryEvent event )
+    {
+        StringBuilder buffer = new StringBuilder( 256 );
+        buffer.append( "The POM for " );
+        buffer.append( event.getArtifact() );
+        buffer.append( " is invalid, transitive dependencies (if any) will not be available" );
+
+        if ( logger.isDebugEnabled() )
+        {
+            logger.warn( buffer + ": " + event.getException().getMessage() );
+        }
+        else
+        {
+            logger.warn( buffer + ", enable debug logging for more details" );
+        }
+    }
+
+    @Override
+    public void artifactDescriptorMissing( RepositoryEvent event )
+    {
+        logger.warn( "The POM for " + event.getArtifact() + " is missing, no dependency information available" );
+    }
+
+}


[28/50] [abbrv] maven git commit: Move to Java 7

Posted by ah...@apache.org.
Move to Java 7


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

Branch: refs/heads/slf4j-log4j2
Commit: 07b8477b9740d50e50f035ab66fba66d02670510
Parents: 57a6196
Author: Jason van Zyl <ja...@tesla.io>
Authored: Thu Mar 5 15:35:10 2015 -0800
Committer: Jason van Zyl <ja...@tesla.io>
Committed: Thu Mar 5 15:35:10 2015 -0800

----------------------------------------------------------------------
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/07b8477b/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index fc48cdc..94de886 100644
--- a/pom.xml
+++ b/pom.xml
@@ -42,8 +42,8 @@
   <inceptionYear>2001</inceptionYear>
 
   <properties>
-    <maven.compiler.source>1.6</maven.compiler.source>
-    <maven.compiler.target>1.6</maven.compiler.target>
+    <maven.compiler.source>1.7</maven.compiler.source>
+    <maven.compiler.target>1.7</maven.compiler.target>
     <classWorldsVersion>2.5.2</classWorldsVersion>
     <commonsCliVersion>1.2</commonsCliVersion>
     <junitVersion>4.11</junitVersion>


[30/50] [abbrv] maven git commit: stupid "enchancement" :)

Posted by ah...@apache.org.
stupid "enchancement" :)

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

Branch: refs/heads/slf4j-log4j2
Commit: 207d18ddb67967285ce83ec114f9081ba6d3a623
Parents: 5947c4e
Author: Hervé Boutemy <hb...@apache.org>
Authored: Sat Mar 7 09:07:08 2015 +0100
Committer: Hervé Boutemy <hb...@apache.org>
Committed: Sat Mar 7 09:07:08 2015 +0100

----------------------------------------------------------------------
 maven-embedder/src/main/mdo/core-extensions.mdo | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/207d18dd/maven-embedder/src/main/mdo/core-extensions.mdo
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/mdo/core-extensions.mdo b/maven-embedder/src/main/mdo/core-extensions.mdo
index 6b75973..3a8d80a 100644
--- a/maven-embedder/src/main/mdo/core-extensions.mdo
+++ b/maven-embedder/src/main/mdo/core-extensions.mdo
@@ -26,7 +26,7 @@
   xml.schemaLocation="http://maven.apache.org/xsd/core-extensions-${version}.xsd">
 
   <id>core-extensions</id>
-  <name>Core Extensions</name>
+  <name>CoreExtensions</name>
   <description><![CDATA[
   <p>This is a reference for the Core Extensions descriptor.</p>
   <p>The default location for the Core Extensions descriptor file is <code>${maven.projectBasedir}/.mvn/extensions.xml</code></p>


[45/50] [abbrv] maven git commit: Update JDK references to JDK7

Posted by ah...@apache.org.
Update JDK references to JDK7


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

Branch: refs/heads/slf4j-log4j2
Commit: c1384a2fed18a4807bef8c501b848c1efe631960
Parents: c88ac1b
Author: Jason van Zyl <ja...@tesla.io>
Authored: Thu Mar 19 08:43:49 2015 -0400
Committer: Jason van Zyl <ja...@tesla.io>
Committed: Thu Mar 19 08:43:49 2015 -0400

----------------------------------------------------------------------
 README.md               | 4 ++--
 apache-maven/README.txt | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/c1384a2f/README.md
----------------------------------------------------------------------
diff --git a/README.md b/README.md
index 216e7d8..b030c44 100644
--- a/README.md
+++ b/README.md
@@ -11,13 +11,13 @@ Maven is available under the [Apache License, Version 2.0](http://www.apache.org
 
 If you want to bootstrap Maven, you'll need:
 
-- Java 1.6+
+- Java 1.7+
 - Ant 1.8 or later
 
 Run Ant, specifying a location into which the completed Maven distro should be installed:
 
 ```
-ant -Dmaven.home="$HOME/apps/maven/apache-maven-3.2.x-SNAPSHOT"
+ant -Dmaven.home="$HOME/apps/maven/apache-maven-3.3.x-SNAPSHOT"
 ```
 
 Once the build completes, you should have a new Maven distro ready to roll in that directory!

http://git-wip-us.apache.org/repos/asf/maven/blob/c1384a2f/apache-maven/README.txt
----------------------------------------------------------------------
diff --git a/apache-maven/README.txt b/apache-maven/README.txt
index 448ef6e..b05080d 100644
--- a/apache-maven/README.txt
+++ b/apache-maven/README.txt
@@ -22,7 +22,7 @@
   -------------------
 
   JDK:
-    1.6 or above (this is to execute Maven - it still allows you to build against 1.3
+    1.7 or above (this is to execute Maven - it still allows you to build against 1.3
     and prior JDK's).
   Memory:
     No minimum requirement.


[16/50] [abbrv] maven git commit: MNG-5776 Drop support for Win9x in mvn launch scripts for Windows, rename .bat to .cmd, remove duplicate code from mvnDebug.cmd

Posted by ah...@apache.org.
MNG-5776 Drop support for Win9x in mvn launch scripts for Windows, rename .bat to .cmd, remove duplicate code from mvnDebug.cmd


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

Branch: refs/heads/slf4j-log4j2
Commit: c6faf8dd65587c3ea6d79ccf48e25bb7b90e18df
Parents: 7b3e956
Author: Andreas Gudian <ag...@apache.org>
Authored: Sat Feb 28 15:50:58 2015 +0100
Committer: Andreas Gudian <ag...@apache.org>
Committed: Sat Feb 28 15:50:58 2015 +0100

----------------------------------------------------------------------
 apache-maven/README.txt           |   6 +-
 apache-maven/src/bin/mvn.bat      | 239 --------------------------------
 apache-maven/src/bin/mvn.cmd      | 176 ++++++++++++++++++++++++
 apache-maven/src/bin/mvnDebug.bat | 243 ---------------------------------
 apache-maven/src/bin/mvnDebug.cmd |  31 +++++
 5 files changed, 211 insertions(+), 484 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/c6faf8dd/apache-maven/README.txt
----------------------------------------------------------------------
diff --git a/apache-maven/README.txt b/apache-maven/README.txt
index 668fb31..448ef6e 100644
--- a/apache-maven/README.txt
+++ b/apache-maven/README.txt
@@ -31,8 +31,10 @@
     that, additional disk space will be used for your local Maven repository. The size
     of your local repository will vary depending on usage but expect at least 500MB.
   Operating System:
-    No minimum requirement. Start up scripts are included as shell scripts and Windows
-    batch files.
+    Windows:
+      Windows 2000 or above.
+    Unix based systems (Linux, Solaris and Mac OS X) and others:
+      No minimum requirement.
 
   Installing Maven
   ----------------

http://git-wip-us.apache.org/repos/asf/maven/blob/c6faf8dd/apache-maven/src/bin/mvn.bat
----------------------------------------------------------------------
diff --git a/apache-maven/src/bin/mvn.bat b/apache-maven/src/bin/mvn.bat
deleted file mode 100644
index 546842a..0000000
--- a/apache-maven/src/bin/mvn.bat
+++ /dev/null
@@ -1,239 +0,0 @@
-@REM ----------------------------------------------------------------------------
-@REM Licensed to the Apache Software Foundation (ASF) under one
-@REM or more contributor license agreements.  See the NOTICE file
-@REM distributed with this work for additional information
-@REM regarding copyright ownership.  The ASF licenses this file
-@REM to you under the Apache License, Version 2.0 (the
-@REM "License"); you may not use this file except in compliance
-@REM with the License.  You may obtain a copy of the License at
-@REM
-@REM    http://www.apache.org/licenses/LICENSE-2.0
-@REM
-@REM Unless required by applicable law or agreed to in writing,
-@REM software distributed under the License is distributed on an
-@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-@REM KIND, either express or implied.  See the License for the
-@REM specific language governing permissions and limitations
-@REM under the License.
-@REM ----------------------------------------------------------------------------
-
-@REM ----------------------------------------------------------------------------
-@REM Maven2 Start Up Batch script
-@REM
-@REM Required ENV vars:
-@REM JAVA_HOME - location of a JDK home dir
-@REM
-@REM Optional ENV vars
-@REM M2_HOME - location of maven2's installed home dir
-@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
-@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a key stroke before ending
-@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
-@REM     e.g. to debug Maven itself, use
-@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-@REM ----------------------------------------------------------------------------
-
-@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
-@echo off
-@REM enable echoing my setting MAVEN_BATCH_ECHO to 'on'
-@if "%MAVEN_BATCH_ECHO%" == "on"  echo %MAVEN_BATCH_ECHO%
-
-@REM set %HOME% to equivalent of $HOME
-if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
-
-@REM Execute a user defined script before this one
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
-if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
-:skipRcPre
-
-set ERROR_CODE=0
-
-@REM set local scope for the variables with windows NT shell
-if "%OS%"=="Windows_NT" @setlocal
-if "%OS%"=="WINNT" @setlocal
-
-@REM ==== START VALIDATION ====
-if not "%JAVA_HOME%" == "" goto OkJHome
-
-echo.
-echo Error: JAVA_HOME not found in your environment. >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-:OkJHome
-if exist "%JAVA_HOME%\bin\java.exe" goto chkMHome
-
-echo.
-echo Error: JAVA_HOME is set to an invalid directory. >&2
-echo JAVA_HOME = "%JAVA_HOME%" >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-:chkMHome
-if not "%M2_HOME%"=="" goto valMHome
-
-if "%OS%"=="Windows_NT" SET "M2_HOME=%~dp0.."
-if "%OS%"=="WINNT" SET "M2_HOME=%~dp0.."
-if not "%M2_HOME%"=="" goto valMHome
-
-echo.
-echo Error: M2_HOME not found in your environment. >&2
-echo Please set the M2_HOME variable in your environment to match the >&2
-echo location of the Maven installation. >&2
-echo.
-goto error
-
-:valMHome
-
-:stripMHome
-if not "_%M2_HOME:~-1%"=="_\" goto checkMBat
-set "M2_HOME=%M2_HOME:~0,-1%"
-goto stripMHome
-
-:checkMBat
-if exist "%M2_HOME%\bin\mvn.bat" goto init
-
-echo.
-echo Error: M2_HOME is set to an invalid directory. >&2
-echo M2_HOME = "%M2_HOME%" >&2
-echo Please set the M2_HOME variable in your environment to match the >&2
-echo location of the Maven installation >&2
-echo.
-goto error
-@REM ==== END VALIDATION ====
-
-:init
-@REM Decide how to startup depending on the version of windows
-
-@REM -- Windows NT with Novell Login
-if "%OS%"=="WINNT" goto WinNTNovell
-
-@REM -- Win98ME
-if NOT "%OS%"=="Windows_NT" goto Win9xArg
-
-:WinNTNovell
-
-@REM -- 4NT shell
-if "%@eval[2+2]" == "4" goto 4NTArgs
-
-@REM -- Regular WinNT shell
-set MAVEN_CMD_LINE_ARGS=%*
-goto endInit
-
-@REM The 4NT Shell from jp software
-:4NTArgs
-set MAVEN_CMD_LINE_ARGS=%$
-goto endInit
-
-:Win9xArg
-@REM Slurp the command line arguments.  This loop allows for an unlimited number
-@REM of agruments (up to the command line limit, anyway).
-set MAVEN_CMD_LINE_ARGS=
-:Win9xApp
-if %1a==a goto endInit
-set MAVEN_CMD_LINE_ARGS=%MAVEN_CMD_LINE_ARGS% %1
-shift
-goto Win9xApp
-
-@REM Reaching here means variables are defined and arguments have been captured
-:endInit
-
-@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
-@REM Fallback to current working directory if not found.
-
-set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
-IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
-
-set EXEC_DIR=%CD%
-set WDIR=%EXEC_DIR%
-:findBaseDir
-IF EXIST "%WDIR%"\.mvn goto baseDirFound
-cd ..
-IF "%WDIR%"=="%CD%" goto baseDirNotFound
-set WDIR=%CD%
-goto findBaseDir
-
-:baseDirFound
-set MAVEN_PROJECTBASEDIR=%WDIR%
-cd "%EXEC_DIR%"
-goto endDetectBaseDir
-
-:baseDirNotFound
-set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
-cd "%EXEC_DIR%"
-
-:endDetectBaseDir
-
-IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
-
-if NOT "%OS%"=="Windows_NT" goto Win9xAdditionalConfig
-
-setlocal EnableExtensions EnableDelayedExpansion
-for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
-endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
-goto endReadAdditionalConfig
-
-:Win9xAdditionalConfig
-@REM -- Win9x can only read the first line of the file
-set /P JVM_CONFIG_MAVEN_PROPS=<"%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config"
- 
-:endReadAdditionalConfig
-
-SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
-
-@REM -- 4NT shell
-if "%@eval[2+2]" == "4" goto 4NTCWJars
-
-@REM -- Regular WinNT shell
-for %%i in ("%M2_HOME%"\boot\plexus-classworlds-*) do set CLASSWORLDS_JAR="%%i"
-goto runm2
-
-@REM The 4NT Shell from jp software
-:4NTCWJars
-for %%i in ("%M2_HOME%\boot\plexus-classworlds-*") do set CLASSWORLDS_JAR="%%i"
-goto runm2
-
-@REM Start MAVEN2
-:runm2
-set CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
-%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% -classpath %CLASSWORLDS_JAR% "-Dclassworlds.conf=%M2_HOME%\bin\m2.conf" "-Dmaven.home=%M2_HOME%" "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %CLASSWORLDS_LAUNCHER% %MAVEN_CMD_LINE_ARGS%
-if ERRORLEVEL 1 goto error
-goto end
-
-:error
-if "%OS%"=="Windows_NT" @endlocal
-if "%OS%"=="WINNT" @endlocal
-set ERROR_CODE=1
-
-:end
-@REM set local scope for the variables with windows NT shell
-if "%OS%"=="Windows_NT" goto endNT
-if "%OS%"=="WINNT" goto endNT
-
-@REM For old DOS remove the set variables from ENV - we assume they were not set
-@REM before we started - at least we don't leave any baggage around
-set MAVEN_JAVA_EXE=
-set MAVEN_CMD_LINE_ARGS=
-goto postExec
-
-:endNT
-@endlocal & set ERROR_CODE=%ERROR_CODE%
-
-:postExec
-
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
-if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
-:skipRcPost
-
-@REM pause the batch file if MAVEN_BATCH_PAUSE is set to 'on'
-if "%MAVEN_BATCH_PAUSE%" == "on" pause
-
-if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
-
-cmd /C exit /B %ERROR_CODE%
-
-

http://git-wip-us.apache.org/repos/asf/maven/blob/c6faf8dd/apache-maven/src/bin/mvn.cmd
----------------------------------------------------------------------
diff --git a/apache-maven/src/bin/mvn.cmd b/apache-maven/src/bin/mvn.cmd
new file mode 100644
index 0000000..4fad093
--- /dev/null
+++ b/apache-maven/src/bin/mvn.cmd
@@ -0,0 +1,176 @@
+@REM ----------------------------------------------------------------------------
+@REM Licensed to the Apache Software Foundation (ASF) under one
+@REM or more contributor license agreements.  See the NOTICE file
+@REM distributed with this work for additional information
+@REM regarding copyright ownership.  The ASF licenses this file
+@REM to you under the Apache License, Version 2.0 (the
+@REM "License"); you may not use this file except in compliance
+@REM with the License.  You may obtain a copy of the License at
+@REM
+@REM    http://www.apache.org/licenses/LICENSE-2.0
+@REM
+@REM Unless required by applicable law or agreed to in writing,
+@REM software distributed under the License is distributed on an
+@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+@REM KIND, either express or implied.  See the License for the
+@REM specific language governing permissions and limitations
+@REM under the License.
+@REM ----------------------------------------------------------------------------
+
+@REM ----------------------------------------------------------------------------
+@REM Maven2 Start Up Batch script
+@REM
+@REM Required ENV vars:
+@REM JAVA_HOME - location of a JDK home dir
+@REM
+@REM Optional ENV vars
+@REM M2_HOME - location of maven2's installed home dir
+@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
+@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a key stroke before ending
+@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
+@REM     e.g. to debug Maven itself, use
+@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
+@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
+@REM ----------------------------------------------------------------------------
+
+@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
+@echo off
+@REM enable echoing my setting MAVEN_BATCH_ECHO to 'on'
+@if "%MAVEN_BATCH_ECHO%" == "on"  echo %MAVEN_BATCH_ECHO%
+
+@REM set %HOME% to equivalent of $HOME
+if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
+
+@REM Execute a user defined script before this one
+if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
+@REM check for pre script, once with legacy .bat ending and once with .cmd ending
+if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
+if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd"
+:skipRcPre
+
+@setlocal
+
+set ERROR_CODE=0
+
+@REM To isolate internal variables from possible post scripts, we use another setlocal
+@setlocal
+
+@REM ==== START VALIDATION ====
+if not "%JAVA_HOME%" == "" goto OkJHome
+
+echo.
+echo Error: JAVA_HOME not found in your environment. >&2
+echo Please set the JAVA_HOME variable in your environment to match the >&2
+echo location of your Java installation. >&2
+echo.
+goto error
+
+:OkJHome
+if exist "%JAVA_HOME%\bin\java.exe" goto chkMHome
+
+echo.
+echo Error: JAVA_HOME is set to an invalid directory. >&2
+echo JAVA_HOME = "%JAVA_HOME%" >&2
+echo Please set the JAVA_HOME variable in your environment to match the >&2
+echo location of your Java installation. >&2
+echo.
+goto error
+
+:chkMHome
+if not "%M2_HOME%"=="" goto valMHome
+
+SET "M2_HOME=%~dp0.."
+if not "%M2_HOME%"=="" goto valMHome
+
+echo.
+echo Error: M2_HOME not found in your environment. >&2
+echo Please set the M2_HOME variable in your environment to match the >&2
+echo location of the Maven installation. >&2
+echo.
+goto error
+
+:valMHome
+
+:stripMHome
+if not "_%M2_HOME:~-1%"=="_\" goto checkMCmd
+set "M2_HOME=%M2_HOME:~0,-1%"
+goto stripMHome
+
+:checkMCmd
+if exist "%M2_HOME%\bin\mvn.cmd" goto init
+
+echo.
+echo Error: M2_HOME is set to an invalid directory. >&2
+echo M2_HOME = "%M2_HOME%" >&2
+echo Please set the M2_HOME variable in your environment to match the >&2
+echo location of the Maven installation >&2
+echo.
+goto error
+@REM ==== END VALIDATION ====
+
+:init
+
+set MAVEN_CMD_LINE_ARGS=%*
+
+@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
+@REM Fallback to current working directory if not found.
+
+set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
+IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
+
+set EXEC_DIR=%CD%
+set WDIR=%EXEC_DIR%
+:findBaseDir
+IF EXIST "%WDIR%"\.mvn goto baseDirFound
+cd ..
+IF "%WDIR%"=="%CD%" goto baseDirNotFound
+set WDIR=%CD%
+goto findBaseDir
+
+:baseDirFound
+set MAVEN_PROJECTBASEDIR=%WDIR%
+cd "%EXEC_DIR%"
+goto endDetectBaseDir
+
+:baseDirNotFound
+set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
+cd "%EXEC_DIR%"
+
+:endDetectBaseDir
+
+IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
+
+@setlocal EnableExtensions EnableDelayedExpansion
+for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
+@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
+
+:endReadAdditionalConfig
+
+SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
+
+for %%i in ("%M2_HOME%"\boot\plexus-classworlds-*) do set CLASSWORLDS_JAR="%%i"
+
+set CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
+
+%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %CLASSWORLDS_JAR% "-Dclassworlds.conf=%M2_HOME%\bin\m2.conf" "-Dmaven.home=%M2_HOME%" "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %CLASSWORLDS_LAUNCHER% %MAVEN_CMD_LINE_ARGS%
+if ERRORLEVEL 1 goto error
+goto end
+
+:error
+set ERROR_CODE=1
+
+:end
+@endlocal & set ERROR_CODE=%ERROR_CODE%
+
+if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
+@REM check for post script, once with legacy .bat ending and once with .cmd ending
+if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
+if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd"
+:skipRcPost
+
+@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
+if "%MAVEN_BATCH_PAUSE%" == "on" pause
+
+if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
+
+exit /B %ERROR_CODE%

http://git-wip-us.apache.org/repos/asf/maven/blob/c6faf8dd/apache-maven/src/bin/mvnDebug.bat
----------------------------------------------------------------------
diff --git a/apache-maven/src/bin/mvnDebug.bat b/apache-maven/src/bin/mvnDebug.bat
deleted file mode 100644
index 6452638..0000000
--- a/apache-maven/src/bin/mvnDebug.bat
+++ /dev/null
@@ -1,243 +0,0 @@
-@REM ----------------------------------------------------------------------------
-@REM Licensed to the Apache Software Foundation (ASF) under one
-@REM or more contributor license agreements.  See the NOTICE file
-@REM distributed with this work for additional information
-@REM regarding copyright ownership.  The ASF licenses this file
-@REM to you under the Apache License, Version 2.0 (the
-@REM "License"); you may not use this file except in compliance
-@REM with the License.  You may obtain a copy of the License at
-@REM
-@REM    http://www.apache.org/licenses/LICENSE-2.0
-@REM
-@REM Unless required by applicable law or agreed to in writing,
-@REM software distributed under the License is distributed on an
-@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-@REM KIND, either express or implied.  See the License for the
-@REM specific language governing permissions and limitations
-@REM under the License.
-@REM ----------------------------------------------------------------------------
-
-@REM ----------------------------------------------------------------------------
-@REM Maven2 Start Up Batch script
-@REM
-@REM Required ENV vars:
-@REM JAVA_HOME - location of a JDK home dir
-@REM
-@REM Optional ENV vars
-@REM M2_HOME - location of maven2's installed home dir
-@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
-@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a key stroke before ending
-@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
-@REM     e.g. to debug Maven itself, use
-@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-@REM ----------------------------------------------------------------------------
-
-@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
-@echo off
-@REM enable echoing my setting MAVEN_BATCH_ECHO to 'on'
-@if "%MAVEN_BATCH_ECHO%" == "on"  echo %MAVEN_BATCH_ECHO%
-
-@echo Preparing to Execute Maven in Debug Mode
-
-@REM set %HOME% to equivalent of $HOME
-if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
-
-@REM Execute a user defined script before this one
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
-if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
-:skipRcPre
-
-set ERROR_CODE=0
-
-@REM set local scope for the variables with windows NT shell
-if "%OS%"=="Windows_NT" @setlocal
-if "%OS%"=="WINNT" @setlocal
-
-set MAVEN_DEBUG_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-
-@REM ==== START VALIDATION ====
-if not "%JAVA_HOME%" == "" goto OkJHome
-
-echo.
-echo Error: JAVA_HOME not found in your environment. >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-:OkJHome
-if exist "%JAVA_HOME%\bin\java.exe" goto chkMHome
-
-echo.
-echo Error: JAVA_HOME is set to an invalid directory. >&2
-echo JAVA_HOME = "%JAVA_HOME%" >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-:chkMHome
-if not "%M2_HOME%"=="" goto valMHome
-
-if "%OS%"=="Windows_NT" SET "M2_HOME=%~dp0.."
-if "%OS%"=="WINNT" SET "M2_HOME=%~dp0.."
-if not "%M2_HOME%"=="" goto valMHome
-
-echo.
-echo Error: M2_HOME not found in your environment. >&2
-echo Please set the M2_HOME variable in your environment to match the >&2
-echo location of the Maven installation. >&2
-echo.
-goto error
-
-:valMHome
-
-:stripMHome
-if not "_%M2_HOME:~-1%"=="_\" goto checkMBat
-set "M2_HOME=%M2_HOME:~0,-1%"
-goto stripMHome
-
-:checkMBat
-if exist "%M2_HOME%\bin\mvn.bat" goto init
-
-echo.
-echo Error: M2_HOME is set to an invalid directory. >&2
-echo M2_HOME = "%M2_HOME%" >&2
-echo Please set the M2_HOME variable in your environment to match the >&2
-echo location of the Maven installation >&2
-echo.
-goto error
-@REM ==== END VALIDATION ====
-
-:init
-@REM Decide how to startup depending on the version of windows
-
-@REM -- Windows NT with Novell Login
-if "%OS%"=="WINNT" goto WinNTNovell
-
-@REM -- Win98ME
-if NOT "%OS%"=="Windows_NT" goto Win9xArg
-
-:WinNTNovell
-
-@REM -- 4NT shell
-if "%@eval[2+2]" == "4" goto 4NTArgs
-
-@REM -- Regular WinNT shell
-set MAVEN_CMD_LINE_ARGS=%*
-goto endInit
-
-@REM The 4NT Shell from jp software
-:4NTArgs
-set MAVEN_CMD_LINE_ARGS=%$
-goto endInit
-
-:Win9xArg
-@REM Slurp the command line arguments.  This loop allows for an unlimited number
-@REM of agruments (up to the command line limit, anyway).
-set MAVEN_CMD_LINE_ARGS=
-:Win9xApp
-if %1a==a goto endInit
-set MAVEN_CMD_LINE_ARGS=%MAVEN_CMD_LINE_ARGS% %1
-shift
-goto Win9xApp
-
-@REM Reaching here means variables are defined and arguments have been captured
-:endInit
-
-@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
-@REM Fallback to current working directory if not found.
-
-set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
-IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
-
-set EXEC_DIR=%CD%
-set WDIR=%EXEC_DIR%
-:findBaseDir
-IF EXIST "%WDIR%"\.mvn goto baseDirFound
-cd ..
-IF "%WDIR%"=="%CD%" goto baseDirNotFound
-set WDIR=%CD%
-goto findBaseDir
-
-:baseDirFound
-set MAVEN_PROJECTBASEDIR=%WDIR%
-cd "%EXEC_DIR%"
-goto endDetectBaseDir
-
-:baseDirNotFound
-set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
-cd "%EXEC_DIR%"
-
-:endDetectBaseDir
-
-IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
-
-if NOT "%OS%"=="Windows_NT" goto Win9xAdditionalConfig
-
-setlocal EnableExtensions EnableDelayedExpansion
-for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
-endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
-goto endReadAdditionalConfig
-
-:Win9xAdditionalConfig
-@REM -- Win9x can only read the first line of the file
-set /P JVM_CONFIG_MAVEN_PROPS=<"%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config"
- 
-:endReadAdditionalConfig
-
-SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
-
-@REM -- 4NT shell
-if "%@eval[2+2]" == "4" goto 4NTCWJars
-
-@REM -- Regular WinNT shell
-for %%i in ("%M2_HOME%"\boot\plexus-classworlds-*) do set CLASSWORLDS_JAR="%%i"
-goto runm2
-
-@REM The 4NT Shell from jp software
-:4NTCWJars
-for %%i in ("%M2_HOME%\boot\plexus-classworlds-*") do set CLASSWORLDS_JAR="%%i"
-goto runm2
-
-@REM Start MAVEN2
-:runm2
-set CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
-%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %CLASSWORLDS_JAR% "-Dclassworlds.conf=%M2_HOME%\bin\m2.conf" "-Dmaven.home=%M2_HOME%" "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %CLASSWORLDS_LAUNCHER% %MAVEN_CMD_LINE_ARGS%
-if ERRORLEVEL 1 goto error
-goto end
-
-:error
-if "%OS%"=="Windows_NT" @endlocal
-if "%OS%"=="WINNT" @endlocal
-set ERROR_CODE=1
-
-:end
-@REM set local scope for the variables with windows NT shell
-if "%OS%"=="Windows_NT" goto endNT
-if "%OS%"=="WINNT" goto endNT
-
-@REM For old DOS remove the set variables from ENV - we assume they were not set
-@REM before we started - at least we don't leave any baggage around
-set MAVEN_JAVA_EXE=
-set MAVEN_CMD_LINE_ARGS=
-goto postExec
-
-:endNT
-@endlocal & set ERROR_CODE=%ERROR_CODE%
-
-:postExec
-
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
-if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
-:skipRcPost
-
-@REM pause the batch file if MAVEN_BATCH_PAUSE is set to 'on'
-if "%MAVEN_BATCH_PAUSE%" == "on" pause
-
-if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
-
-cmd /C exit /B %ERROR_CODE%
-
-

http://git-wip-us.apache.org/repos/asf/maven/blob/c6faf8dd/apache-maven/src/bin/mvnDebug.cmd
----------------------------------------------------------------------
diff --git a/apache-maven/src/bin/mvnDebug.cmd b/apache-maven/src/bin/mvnDebug.cmd
new file mode 100644
index 0000000..1f0d3bf
--- /dev/null
+++ b/apache-maven/src/bin/mvnDebug.cmd
@@ -0,0 +1,31 @@
+@REM ----------------------------------------------------------------------------
+@REM Licensed to the Apache Software Foundation (ASF) under one
+@REM or more contributor license agreements.  See the NOTICE file
+@REM distributed with this work for additional information
+@REM regarding copyright ownership.  The ASF licenses this file
+@REM to you under the Apache License, Version 2.0 (the
+@REM "License"); you may not use this file except in compliance
+@REM with the License.  You may obtain a copy of the License at
+@REM
+@REM    http://www.apache.org/licenses/LICENSE-2.0
+@REM
+@REM Unless required by applicable law or agreed to in writing,
+@REM software distributed under the License is distributed on an
+@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+@REM KIND, either express or implied.  See the License for the
+@REM specific language governing permissions and limitations
+@REM under the License.
+@REM ----------------------------------------------------------------------------
+
+@REM ----------------------------------------------------------------------------
+@REM Maven2 Start Up Batch script to run mvn.cmd with the following additional
+@REM Java VM settings:
+@REM
+@REM     -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
+@REM
+@REM ----------------------------------------------------------------------------
+
+@setlocal
+@set MAVEN_DEBUG_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
+
+@call "%~dp0"mvn.cmd %*


[49/50] [abbrv] maven git commit: Package and configure log4J 2.2 by default. Replace the content of conf/logging/log4j2.xml by the one from conf/logging/log4j2-color.xml to enjoy the colorised console

Posted by ah...@apache.org.
Package and configure log4J 2.2 by default.
Replace the content of conf/logging/log4j2.xml by the one from conf/logging/log4j2-color.xml to enjoy the colorised console


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

Branch: refs/heads/slf4j-log4j2
Commit: dbad2e536a7024a277eef1c56eaa2286f9f2a7f9
Parents: f78742f
Author: Arnaud Héritier <ah...@apache.org>
Authored: Wed Apr 1 02:16:56 2015 +0200
Committer: Arnaud Héritier <ah...@apache.org>
Committed: Wed Apr 1 02:16:56 2015 +0200

----------------------------------------------------------------------
 apache-maven/pom.xml                            | 15 +++++++-
 apache-maven/src/conf/logging/log4j2-color.xml  | 36 ++++++++++++++++++++
 apache-maven/src/conf/logging/log4j2.xml        | 36 ++++++++++++++++++++
 maven-embedder/pom.xml                          |  8 +++++
 .../maven/slf4j-configuration.properties        |  2 +-
 pom.xml                                         | 31 +++++++++++++++--
 6 files changed, 123 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/dbad2e53/apache-maven/pom.xml
----------------------------------------------------------------------
diff --git a/apache-maven/pom.xml b/apache-maven/pom.xml
index e8277b5..c3e9e49 100644
--- a/apache-maven/pom.xml
+++ b/apache-maven/pom.xml
@@ -95,7 +95,20 @@
     </dependency>
     <dependency>
       <groupId>org.slf4j</groupId>
-      <artifactId>slf4j-simple</artifactId>
+      <artifactId>slf4j-ext</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.logging.log4j</groupId>
+      <artifactId>log4j-slf4j-impl</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.logging.log4j</groupId>
+      <artifactId>log4j-core</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.fusesource.jansi</groupId>
+      <artifactId>jansi</artifactId>
+      <scope>runtime</scope>
     </dependency>
   </dependencies>
 

http://git-wip-us.apache.org/repos/asf/maven/blob/dbad2e53/apache-maven/src/conf/logging/log4j2-color.xml
----------------------------------------------------------------------
diff --git a/apache-maven/src/conf/logging/log4j2-color.xml b/apache-maven/src/conf/logging/log4j2-color.xml
new file mode 100644
index 0000000..bea1e76
--- /dev/null
+++ b/apache-maven/src/conf/logging/log4j2-color.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+
+
+<configuration>
+  <properties>
+     <property name="maven.logging.root.level">INFO</property>
+  </properties>
+  <appenders>
+    <Console name="console" target="SYSTEM_OUT">
+      <PatternLayout pattern="%highlight{[%p{WARN=WARNING}]} %msg%n%throwable" />
+    </Console>
+  </appenders>
+  <loggers>
+    <root level="${sys:maven.logging.root.level}">
+      <appender-ref ref="console"/>
+    </root>
+  </loggers>
+</configuration>

http://git-wip-us.apache.org/repos/asf/maven/blob/dbad2e53/apache-maven/src/conf/logging/log4j2.xml
----------------------------------------------------------------------
diff --git a/apache-maven/src/conf/logging/log4j2.xml b/apache-maven/src/conf/logging/log4j2.xml
new file mode 100644
index 0000000..6635597
--- /dev/null
+++ b/apache-maven/src/conf/logging/log4j2.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+
+
+<configuration> <!--status="debug"-->
+  <properties>
+     <property name="maven.logging.root.level">INFO</property>
+  </properties>
+  <appenders>
+    <Console name="console" target="SYSTEM_OUT">
+      <PatternLayout pattern="[%p{WARN=WARNING}] %msg%n%throwable"/>
+    </Console>
+  </appenders>
+  <loggers>
+    <root level="${sys:maven.logging.root.level}">
+      <appender-ref ref="console"/>
+    </root>
+  </loggers>
+</configuration>

http://git-wip-us.apache.org/repos/asf/maven/blob/dbad2e53/maven-embedder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-embedder/pom.xml b/maven-embedder/pom.xml
index 53f0724..ef8b935 100644
--- a/maven-embedder/pom.xml
+++ b/maven-embedder/pom.xml
@@ -82,6 +82,10 @@
     </dependency>
     <dependency>
       <groupId>org.slf4j</groupId>
+      <artifactId>slf4j-ext</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.slf4j</groupId>
       <artifactId>slf4j-simple</artifactId>
       <optional>true</optional>
     </dependency>
@@ -90,6 +94,10 @@
       <artifactId>logback-classic</artifactId>
       <optional>true</optional>
     </dependency>
+    <dependency>
+      <groupId>org.apache.logging.log4j</groupId>
+      <artifactId>log4j-slf4j-impl</artifactId>
+    </dependency>
     <!-- CLI -->
     <dependency>
       <groupId>commons-cli</groupId>

http://git-wip-us.apache.org/repos/asf/maven/blob/dbad2e53/maven-embedder/src/main/resources/META-INF/maven/slf4j-configuration.properties
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/resources/META-INF/maven/slf4j-configuration.properties b/maven-embedder/src/main/resources/META-INF/maven/slf4j-configuration.properties
index 8741836..cd01f9e 100644
--- a/maven-embedder/src/main/resources/META-INF/maven/slf4j-configuration.properties
+++ b/maven-embedder/src/main/resources/META-INF/maven/slf4j-configuration.properties
@@ -18,5 +18,5 @@
 # key = Slf4j effective logger factory implementation
 # value = corresponding o.a.m.cli.logging.Slf4jConfiguration class
 org.slf4j.impl.SimpleLoggerFactory org.apache.maven.cli.logging.impl.Slf4jSimpleConfiguration
-org.slf4j.helpers.Log4jLoggerFactory org.apache.maven.cli.logging.impl.Log4j2Configuration
+org.apache.logging.slf4j.Log4jLoggerFactory org.apache.maven.cli.logging.impl.Log4j2Configuration
 ch.qos.logback.classic.LoggerContext org.apache.maven.cli.logging.impl.LogbackConfiguration

http://git-wip-us.apache.org/repos/asf/maven/blob/dbad2e53/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index b0ab4e8..87442f3 100644
--- a/pom.xml
+++ b/pom.xml
@@ -61,6 +61,9 @@
     <jxpathVersion>1.3</jxpathVersion>
     <aetherVersion>1.0.2.v20150114</aetherVersion>
     <slf4jVersion>1.7.5</slf4jVersion>
+    <log4j2Version>2.2</log4j2Version>
+    <logbackVersion>1.0.7</logbackVersion>
+    <jansiVersion>1.11</jansiVersion>
     <maven.test.redirectTestOutputToFile>true</maven.test.redirectTestOutputToFile>
     <!-- Control the name of the distribution and information output by mvn -->
     <distributionId>apache-maven</distributionId>
@@ -252,6 +255,7 @@
         <artifactId>plexus-interpolation</artifactId>
         <version>${plexusInterpolationVersion}</version>
       </dependency>
+      <!-- Logging -->
       <dependency>
         <groupId>org.slf4j</groupId>
         <artifactId>slf4j-api</artifactId>
@@ -261,13 +265,34 @@
         <groupId>org.slf4j</groupId>
         <artifactId>slf4j-simple</artifactId>
         <version>${slf4jVersion}</version>
-        <optional>true</optional>
       </dependency>
       <dependency>
         <groupId>ch.qos.logback</groupId>
         <artifactId>logback-classic</artifactId>
-        <version>1.0.7</version>
-        <optional>true</optional>
+        <version>${logbackVersion}</version>
+      </dependency>
+      <dependency>
+        <groupId>org.slf4j</groupId>
+        <artifactId>slf4j-ext</artifactId>
+        <version>${slf4jVersion}</version>
+        <scope>compile</scope>
+      </dependency>
+      <dependency>
+        <groupId>org.apache.logging.log4j</groupId>
+        <artifactId>log4j-slf4j-impl</artifactId>
+        <version>${log4j2Version}</version>
+        <scope>compile</scope>
+      </dependency>
+      <dependency>
+        <groupId>org.apache.logging.log4j</groupId>
+        <artifactId>log4j-core</artifactId>
+        <version>${log4j2Version}</version>
+      </dependency>
+      <dependency>
+        <groupId>org.fusesource.jansi</groupId>
+        <artifactId>jansi</artifactId>
+        <version>${jansiVersion}</version>
+        <scope>runtime</scope>
       </dependency>
       <!--  Wagon -->
       <dependency>


[47/50] [abbrv] maven git commit: MNG-5793 do not register same realm both with plugin and extensions realm caches

Posted by ah...@apache.org.
MNG-5793 do not register same realm both with plugin and extensions realm caches

Signed-off-by: Igor Fedorenko <if...@apache.org>


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

Branch: refs/heads/slf4j-log4j2
Commit: 9f50eabea54343fca522f42a2a41ffdb086e3240
Parents: 4f55342
Author: Igor Fedorenko <if...@apache.org>
Authored: Wed Mar 25 15:39:27 2015 -0400
Committer: Igor Fedorenko <if...@apache.org>
Committed: Wed Mar 25 15:43:47 2015 -0400

----------------------------------------------------------------------
 .../internal/DefaultMavenPluginManager.java     | 113 ++++++++++---------
 1 file changed, 58 insertions(+), 55 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/9f50eabe/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java
index d300c45..d32e04c 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java
@@ -333,35 +333,63 @@ public class DefaultMavenPluginManager
         throws PluginResolutionException, PluginContainerException
     {
         Plugin plugin = pluginDescriptor.getPlugin();
-
         MavenProject project = session.getCurrentProject();
 
-        Map<String, ClassLoader> foreignImports = calcImports( project, parent, imports );
-
-        PluginRealmCache.Key cacheKey =
-            pluginRealmCache.createKey( plugin, parent, foreignImports, filter, project.getRemotePluginRepositories(),
-                                        session.getRepositorySession() );
+        if ( plugin.isExtensions() )
+        {
+            ExtensionRealmCache.CacheRecord extensionRecord;
+            try
+            {
+                RepositorySystemSession repositorySession = session.getRepositorySession();
+                extensionRecord = setupExtensionsRealm( project, plugin, repositorySession );
+            }
+            catch ( PluginManagerException e )
+            {
+                // extensions realm is expected to be fully setup at this point
+                // any exception means a problem in maven code, not a user error
+                throw new IllegalStateException( e );
+            }
 
-        PluginRealmCache.CacheRecord cacheRecord = pluginRealmCache.get( cacheKey );
+            ClassRealm pluginRealm = extensionRecord.realm;
+            List<Artifact> pluginArtifacts = extensionRecord.artifacts;
 
-        if ( cacheRecord != null )
-        {
-            pluginDescriptor.setClassRealm( cacheRecord.realm );
-            pluginDescriptor.setArtifacts( new ArrayList<Artifact>( cacheRecord.artifacts ) );
             for ( ComponentDescriptor<?> componentDescriptor : pluginDescriptor.getComponents() )
             {
-                componentDescriptor.setRealm( cacheRecord.realm );
+                componentDescriptor.setRealm( pluginRealm );
             }
+
+            pluginDescriptor.setClassRealm( pluginRealm );
+            pluginDescriptor.setArtifacts( pluginArtifacts );
         }
         else
         {
-            createPluginRealm( pluginDescriptor, session, parent, foreignImports, filter );
+            Map<String, ClassLoader> foreignImports = calcImports( project, parent, imports );
 
-            cacheRecord =
-                pluginRealmCache.put( cacheKey, pluginDescriptor.getClassRealm(), pluginDescriptor.getArtifacts() );
-        }
+            PluginRealmCache.Key cacheKey =
+                pluginRealmCache.createKey( plugin, parent, foreignImports, filter,
+                                            project.getRemotePluginRepositories(), session.getRepositorySession() );
+
+            PluginRealmCache.CacheRecord cacheRecord = pluginRealmCache.get( cacheKey );
+
+            if ( cacheRecord != null )
+            {
+                pluginDescriptor.setClassRealm( cacheRecord.realm );
+                pluginDescriptor.setArtifacts( new ArrayList<Artifact>( cacheRecord.artifacts ) );
+                for ( ComponentDescriptor<?> componentDescriptor : pluginDescriptor.getComponents() )
+                {
+                    componentDescriptor.setRealm( cacheRecord.realm );
+                }
+            }
+            else
+            {
+                createPluginRealm( pluginDescriptor, session, parent, foreignImports, filter );
 
-        pluginRealmCache.register( project, cacheKey, cacheRecord );
+                cacheRecord =
+                    pluginRealmCache.put( cacheKey, pluginDescriptor.getClassRealm(), pluginDescriptor.getArtifacts() );
+            }
+
+            pluginRealmCache.register( project, cacheKey, cacheRecord );
+        }
     }
 
     private void createPluginRealm( PluginDescriptor pluginDescriptor, MavenSession session, ClassLoader parent,
@@ -388,49 +416,24 @@ public class DefaultMavenPluginManager
         final List<Artifact> pluginArtifacts;
 
         RepositorySystemSession repositorySession = session.getRepositorySession();
-        if ( plugin.isExtensions() )
-        {
-            ExtensionRealmCache.CacheRecord extensionRecord;
-            try
-            {
-                extensionRecord = setupExtensionsRealm( project, plugin, repositorySession );
-            }
-            catch ( PluginManagerException e )
-            {
-                // extensions realm is expected to be fully setup at this point
-                // any exception means a problem in maven code, not a user error
-                throw new IllegalStateException( e );
-            }
-
-            pluginRealm = extensionRecord.realm;
-            pluginArtifacts = extensionRecord.artifacts;
-
-            for ( ComponentDescriptor<?> componentDescriptor : pluginDescriptor.getComponents() )
-            {
-                componentDescriptor.setRealm( pluginRealm );
-            }
-        }
-        else
-        {
-            DependencyFilter dependencyFilter = project.getExtensionDependencyFilter();
-            dependencyFilter = AndDependencyFilter.newInstance( dependencyFilter, filter );
+        DependencyFilter dependencyFilter = project.getExtensionDependencyFilter();
+        dependencyFilter = AndDependencyFilter.newInstance( dependencyFilter, filter );
 
-            DependencyNode root =
-                pluginDependenciesResolver.resolve( plugin, RepositoryUtils.toArtifact( pluginArtifact ),
-                                                    dependencyFilter, project.getRemotePluginRepositories(),
-                                                    repositorySession );
+        DependencyNode root =
+            pluginDependenciesResolver.resolve( plugin, RepositoryUtils.toArtifact( pluginArtifact ),
+                                                dependencyFilter, project.getRemotePluginRepositories(),
+                                                repositorySession );
 
-            PreorderNodeListGenerator nlg = new PreorderNodeListGenerator();
-            root.accept( nlg );
+        PreorderNodeListGenerator nlg = new PreorderNodeListGenerator();
+        root.accept( nlg );
 
-            pluginArtifacts = toMavenArtifacts( root, nlg );
+        pluginArtifacts = toMavenArtifacts( root, nlg );
 
-            pluginRealm =
-                classRealmManager.createPluginRealm( plugin, parent, null, foreignImports,
-                                                     toAetherArtifacts( pluginArtifacts ) );
+        pluginRealm =
+            classRealmManager.createPluginRealm( plugin, parent, null, foreignImports,
+                                                 toAetherArtifacts( pluginArtifacts ) );
 
-            discoverPluginComponents( pluginRealm, plugin, pluginDescriptor );
-        }
+        discoverPluginComponents( pluginRealm, plugin, pluginDescriptor );
 
         pluginDescriptor.setClassRealm( pluginRealm );
         pluginDescriptor.setArtifacts( pluginArtifacts );


[09/50] [abbrv] maven git commit: MNG-5771 disabled modello xdoc/xsd for core extensions mdo

Posted by ah...@apache.org.
MNG-5771 disabled modello xdoc/xsd for core extensions mdo

... hopefully fixes maven site generation

Signed-off-by: Igor Fedorenko <if...@apache.org>


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

Branch: refs/heads/slf4j-log4j2
Commit: 2eab8924a9cce521131cc760b4429cbac94df440
Parents: eaef349
Author: Igor Fedorenko <if...@apache.org>
Authored: Fri Feb 20 19:17:53 2015 -0500
Committer: Igor Fedorenko <if...@apache.org>
Committed: Fri Feb 20 19:17:57 2015 -0500

----------------------------------------------------------------------
 maven-embedder/pom.xml | 19 ++++++++++++++++---
 1 file changed, 16 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/2eab8924/maven-embedder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-embedder/pom.xml b/maven-embedder/pom.xml
index 2dc5fde..a0a359f 100644
--- a/maven-embedder/pom.xml
+++ b/maven-embedder/pom.xml
@@ -134,10 +134,23 @@
         <artifactId>modello-maven-plugin</artifactId>
         <configuration>
           <version>1.0.0</version>
-          <models>
-            <model>src/main/mdo/core-extensions.mdo</model>
-          </models>
         </configuration>
+        <executions>
+          <execution>
+            <id>standard</id>
+            <configuration>
+              <models>
+                <model>src/main/mdo/core-extensions.mdo</model>
+              </models>
+            </configuration>
+          </execution>
+          <execution>
+            <id>site-docs</id>
+            <configuration>
+              <models/>
+            </configuration>
+          </execution>
+        </executions>
       </plugin>
     </plugins>
   </build>


[26/50] [abbrv] maven git commit: [MNG-5778] s/3.2.6/3.3.0/ in code (@since in javadoc)

Posted by ah...@apache.org.
[MNG-5778] s/3.2.6/3.3.0/ in code (@since in javadoc)

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

Branch: refs/heads/slf4j-log4j2
Commit: 772df4ed2a5284487dc28f1e8dafca8824602ee0
Parents: db9e789
Author: Hervé Boutemy <hb...@apache.org>
Authored: Thu Mar 5 08:42:23 2015 +0100
Committer: Hervé Boutemy <hb...@apache.org>
Committed: Thu Mar 5 08:42:23 2015 +0100

----------------------------------------------------------------------
 .../maven/building/ProblemCollectorFactory.java   |  2 +-
 .../maven/execution/MavenExecutionRequest.java    | 18 +++++++++---------
 .../execution/MavenExecutionRequestPopulator.java |  2 +-
 .../maven/extension/internal/CoreExports.java     |  2 +-
 .../extension/internal/CoreExtensionEntry.java    |  2 +-
 .../DefaultRepositorySystemSessionFactory.java    |  2 +-
 .../maven/lifecycle/internal/ReactorContext.java  |  2 +-
 .../apache/maven/plugin/MavenPluginManager.java   |  2 +-
 .../internal/DefaultMavenPluginManager.java       |  2 +-
 .../DefaultPluginDependenciesResolver.java        |  2 +-
 .../maven/project/ExtensionDescriptorBuilder.java |  4 ++--
 .../session/scope/internal/SessionScope.java      |  6 +++---
 .../apache/maven/toolchain/ToolchainManager.java  |  2 +-
 .../building/DefaultToolchainsBuilder.java        |  2 +-
 .../DefaultToolchainsBuildingRequest.java         |  2 +-
 .../building/DefaultToolchainsBuildingResult.java |  2 +-
 .../toolchain/building/ToolchainsBuilder.java     |  2 +-
 .../building/ToolchainsBuildingException.java     |  2 +-
 .../building/ToolchainsBuildingRequest.java       |  2 +-
 .../building/ToolchainsBuildingResult.java        |  2 +-
 .../toolchain/io/DefaultToolchainsReader.java     |  2 +-
 .../toolchain/io/ToolchainsParseException.java    |  2 +-
 .../maven/toolchain/io/ToolchainsReader.java      |  2 +-
 23 files changed, 34 insertions(+), 34 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-builder-support/src/main/java/org/apache/maven/building/ProblemCollectorFactory.java
----------------------------------------------------------------------
diff --git a/maven-builder-support/src/main/java/org/apache/maven/building/ProblemCollectorFactory.java b/maven-builder-support/src/main/java/org/apache/maven/building/ProblemCollectorFactory.java
index fa1de3b..c1c2373 100644
--- a/maven-builder-support/src/main/java/org/apache/maven/building/ProblemCollectorFactory.java
+++ b/maven-builder-support/src/main/java/org/apache/maven/building/ProblemCollectorFactory.java
@@ -24,7 +24,7 @@ import java.util.List;
 /**
  * 
  * @author Robert Scholte
- * @since 3.2.6
+ * @since 3.3.0
  */
 public class ProblemCollectorFactory
 {

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java b/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java
index b88f728..53f84c5 100644
--- a/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java
+++ b/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java
@@ -359,7 +359,7 @@ public interface MavenExecutionRequest
      * 
      * 
      * @return the global toolchains file
-     * @since 3.2.6
+     * @since 3.3.0
      */
     File getGlobalToolchainsFile();
 
@@ -367,7 +367,7 @@ public interface MavenExecutionRequest
      * 
      * @param globalToolchainsFile the global toolchains file
      * @return this request
-     * @since 3.2.6
+     * @since 3.3.0
      */
     MavenExecutionRequest setGlobalToolchainsFile( File globalToolchainsFile );
 
@@ -405,39 +405,39 @@ public interface MavenExecutionRequest
      * 
      * @param toolchains all toolchains grouped by type 
      * @return this request 
-     * @since 3.2.6
+     * @since 3.3.0
      */
     MavenExecutionRequest setToolchains( Map<String, List<ToolchainModel>> toolchains );
     
     /**
      * 
      * @return all toolchains grouped by type, never {@code null}
-     * @since 3.2.6
+     * @since 3.3.0
      */
     Map<String, List<ToolchainModel>> getToolchains();
 
     /**
-     * @since 3.2.6
+     * @since 3.3.0
      */
     void setMultiModuleProjectDirectory( File file );
 
     /**
-     * @since 3.2.6
+     * @since 3.3.0
      */
     File getMultiModuleProjectDirectory();
 
     /**
-     * @since 3.2.6
+     * @since 3.3.0
      */    
     MavenExecutionRequest setEventSpyDispatcher( EventSpyDispatcher eventSpyDispatcher );
     
     /**
-     * @since 3.2.6
+     * @since 3.3.0
      */
     EventSpyDispatcher getEventSpyDispatcher();
 
     /**
-     * @since 3.2.6
+     * @since 3.3.0
      */
     Map<String, Object> getData();
 }

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequestPopulator.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequestPopulator.java b/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequestPopulator.java
index 677e8c2..9efc019 100644
--- a/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequestPopulator.java
+++ b/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequestPopulator.java
@@ -53,7 +53,7 @@ public interface MavenExecutionRequestPopulator
      * @param toolchains The toolchains to copy into the execution request, may be {@code null}.
      * @return The populated execution request, never {@code null}.
      * @throws MavenExecutionRequestPopulationException If the execution request could not be populated.
-     * @since 3.2.6
+     * @since 3.3.0
      */
     MavenExecutionRequest populateFromToolchains( MavenExecutionRequest request, PersistedToolchains toolchains )
         throws MavenExecutionRequestPopulationException;

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExports.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExports.java b/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExports.java
index f1fa9e3..c4265b3 100644
--- a/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExports.java
+++ b/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExports.java
@@ -32,7 +32,7 @@ import com.google.common.collect.ImmutableSet;
  * Provides information about artifacts (identified by groupId:artifactId string key) and classpath elements exported by
  * Maven core itself and loaded Maven core extensions.
  * 
- * @since 3.2.6
+ * @since 3.3.0
  */
 public class CoreExports
 {

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExtensionEntry.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExtensionEntry.java b/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExtensionEntry.java
index d74c390..edadeb2 100644
--- a/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExtensionEntry.java
+++ b/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExtensionEntry.java
@@ -39,7 +39,7 @@ import com.google.common.collect.ImmutableSet;
  * Provides information about artifacts (identified by groupId:artifactId string key) and classpath elements exported by
  * Maven core itself or a Maven core extension.
  * 
- * @since 3.2.6
+ * @since 3.3.0
  */
 public class CoreExtensionEntry
 {

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactory.java
----------------------------------------------------------------------
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 d049caf..6197f0f 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
@@ -61,7 +61,7 @@ import org.eclipse.aether.util.repository.SimpleResolutionErrorPolicy;
 import org.eclipse.sisu.Nullable;
 
 /**
- * @since 3.2.6
+ * @since 3.3.0
  */
 @Named
 public class DefaultRepositorySystemSessionFactory

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ReactorContext.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ReactorContext.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ReactorContext.java
index feda5fc..7df5314 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ReactorContext.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ReactorContext.java
@@ -74,7 +74,7 @@ public class ReactorContext
     }
 
     /**
-     * @since 3.2.6
+     * @since 3.3.0
      */
     public SessionScope.Memento getSessionScopeMemento()
     {

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginManager.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginManager.java b/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginManager.java
index 80cd1e1..b228a1b 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginManager.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginManager.java
@@ -96,7 +96,7 @@ public interface MavenPluginManager
     /**
      * Sets up class realm for the specified build extensions plugin.
      * 
-     * @since 3.2.6
+     * @since 3.3.0
      */
     ExtensionRealmCache.CacheRecord setupExtensionsRealm( MavenProject project, Plugin plugin,
                                                           RepositorySystemSession session )

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java
index e837fbe..d300c45 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java
@@ -125,7 +125,7 @@ public class DefaultMavenPluginManager
      * class realm is used to load build extensions and load mojos for extensions=true plugins.
      * 
      * @noreference this is part of internal implementation and may be changed or removed without notice
-     * @since 3.2.6
+     * @since 3.3.0
      */
     public static final String KEY_EXTENSIONS_REALMS = DefaultMavenPluginManager.class.getName() + "/extensionsRealms";
 

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
index 3bf8e60..9a9a7b8 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
@@ -137,7 +137,7 @@ public class DefaultPluginDependenciesResolver
     }
 
     /**
-     * @since 3.2.6
+     * @since 3.3.0
      */
     public DependencyNode resolveCoreExtension( Plugin plugin, DependencyFilter dependencyFilter,
                                                 List<RemoteRepository> repositories, RepositorySystemSession session )

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/project/ExtensionDescriptorBuilder.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/project/ExtensionDescriptorBuilder.java b/maven-core/src/main/java/org/apache/maven/project/ExtensionDescriptorBuilder.java
index 56bef29..c835eff 100644
--- a/maven-core/src/main/java/org/apache/maven/project/ExtensionDescriptorBuilder.java
+++ b/maven-core/src/main/java/org/apache/maven/project/ExtensionDescriptorBuilder.java
@@ -44,7 +44,7 @@ public class ExtensionDescriptorBuilder
 {
 
     /**
-     * @since 3.2.6 
+     * @since 3.3.0 
      */
     public String getExtensionDescriptorLocation()
     {
@@ -111,7 +111,7 @@ public class ExtensionDescriptorBuilder
     }
 
     /**
-     * @since 3.2.6
+     * @since 3.3.0
      */
     public ExtensionDescriptor build( InputStream is )
         throws IOException

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/session/scope/internal/SessionScope.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/session/scope/internal/SessionScope.java b/maven-core/src/main/java/org/apache/maven/session/scope/internal/SessionScope.java
index 5a38e6e..6d8913f 100644
--- a/maven-core/src/main/java/org/apache/maven/session/scope/internal/SessionScope.java
+++ b/maven-core/src/main/java/org/apache/maven/session/scope/internal/SessionScope.java
@@ -35,7 +35,7 @@ public class SessionScope
     implements Scope
 {
     /**
-     * @since 3.2.6
+     * @since 3.3.0
      */
     public static class Memento
     {
@@ -76,7 +76,7 @@ public class SessionScope
     }
 
     /**
-     * @since 3.2.6
+     * @since 3.3.0
      */
     public void enter( Memento memento )
     {
@@ -109,7 +109,7 @@ public class SessionScope
     }
 
     /**
-     * @since 3.2.6
+     * @since 3.3.0
      */
     public Memento memento()
     {

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/toolchain/ToolchainManager.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/ToolchainManager.java b/maven-core/src/main/java/org/apache/maven/toolchain/ToolchainManager.java
index 9966af2..8eddac5 100644
--- a/maven-core/src/main/java/org/apache/maven/toolchain/ToolchainManager.java
+++ b/maven-core/src/main/java/org/apache/maven/toolchain/ToolchainManager.java
@@ -58,7 +58,7 @@ public interface ToolchainManager
      * @param type the type, must not be {@code null}
      * @param requirements the requirements, may be {@code null}
      * @return the matching toolchains, never {@code null}
-     * @since 3.2.6
+     * @since 3.3.0
      */
     List<Toolchain> getToolchains( MavenSession session, String type, Map<String, String> requirements );
 }

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilder.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilder.java b/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilder.java
index 5e861af..7983388 100644
--- a/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilder.java
+++ b/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilder.java
@@ -41,7 +41,7 @@ import org.apache.maven.toolchain.model.TrackableBase;
 /**
  * 
  * @author Robert Scholte
- * @since 3.2.6
+ * @since 3.3.0
  */
 @Named
 @Singleton

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuildingRequest.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuildingRequest.java b/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuildingRequest.java
index 7773bb3..144d724 100644
--- a/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuildingRequest.java
+++ b/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuildingRequest.java
@@ -25,7 +25,7 @@ import org.apache.maven.building.Source;
  * Collects toolchains that control building of effective toolchains.
  *
  * @author Robert Scholte
- * @since 3.2.6
+ * @since 3.3.0
  */
 public class DefaultToolchainsBuildingRequest
     implements ToolchainsBuildingRequest

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuildingResult.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuildingResult.java b/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuildingResult.java
index b72e5aa..60ca244 100644
--- a/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuildingResult.java
+++ b/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuildingResult.java
@@ -29,7 +29,7 @@ import org.apache.maven.toolchain.model.PersistedToolchains;
  * Holds the result of the merged toolchains and holds the problems during this build, if any.
  * 
  * @author Robert Scholte
- * @since 3.2.6
+ * @since 3.3.0
  */
 public class DefaultToolchainsBuildingResult
     implements ToolchainsBuildingResult

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuilder.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuilder.java b/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuilder.java
index 124bd4a..b2ef0d1 100644
--- a/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuilder.java
+++ b/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuilder.java
@@ -23,7 +23,7 @@ package org.apache.maven.toolchain.building;
  * Builds the effective toolchains from a user toolchains file and/or a global toolchains file.
  *
  * @author Robert Scholte
- * @since 3.2.6
+ * @since 3.3.0
  */
 public interface ToolchainsBuilder
 {

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingException.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingException.java b/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingException.java
index cf6ff74..56ed1d3 100644
--- a/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingException.java
+++ b/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingException.java
@@ -28,7 +28,7 @@ import org.apache.maven.building.Problem;
 
 /**
  * @author Robert Scholte
- * @since 3.2.6
+ * @since 3.3.0
  */
 public class ToolchainsBuildingException
     extends Exception

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingRequest.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingRequest.java b/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingRequest.java
index afefafc..cf65d4c 100644
--- a/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingRequest.java
+++ b/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingRequest.java
@@ -25,7 +25,7 @@ import org.apache.maven.building.Source;
  * Collects toolchains that control the building of effective toolchains.
  *
  * @author Robert Scholte
- * @since 3.2.6
+ * @since 3.3.0
  */
 public interface ToolchainsBuildingRequest
 {

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingResult.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingResult.java b/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingResult.java
index 2aff1de..592fb98 100644
--- a/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingResult.java
+++ b/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingResult.java
@@ -28,7 +28,7 @@ import org.apache.maven.toolchain.model.PersistedToolchains;
  * Collects the output of the toolchains builder.
  *
  * @author Robert Scholte
- * @since 3.2.6
+ * @since 3.3.0
  */
 public interface ToolchainsBuildingResult
 {

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/toolchain/io/DefaultToolchainsReader.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/io/DefaultToolchainsReader.java b/maven-core/src/main/java/org/apache/maven/toolchain/io/DefaultToolchainsReader.java
index f3f3dd7..8aeefe8 100644
--- a/maven-core/src/main/java/org/apache/maven/toolchain/io/DefaultToolchainsReader.java
+++ b/maven-core/src/main/java/org/apache/maven/toolchain/io/DefaultToolchainsReader.java
@@ -38,7 +38,7 @@ import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
  * Handles deserialization of toolchains from the default textual format.
  *
  * @author Robert Scholte
- * @since 3.2.6
+ * @since 3.3.0
  */
 @Named
 @Singleton

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/toolchain/io/ToolchainsParseException.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/io/ToolchainsParseException.java b/maven-core/src/main/java/org/apache/maven/toolchain/io/ToolchainsParseException.java
index 9a5f96f..95c2aed 100644
--- a/maven-core/src/main/java/org/apache/maven/toolchain/io/ToolchainsParseException.java
+++ b/maven-core/src/main/java/org/apache/maven/toolchain/io/ToolchainsParseException.java
@@ -25,7 +25,7 @@ import java.io.IOException;
  * Signals a failure to parse the toolchains due to invalid syntax (e.g. non-wellformed XML or unknown elements).
  *
  * @author Robert Scholte
- * @since 3.2.6
+ * @since 3.3.0
  */
 public class ToolchainsParseException
     extends IOException

http://git-wip-us.apache.org/repos/asf/maven/blob/772df4ed/maven-core/src/main/java/org/apache/maven/toolchain/io/ToolchainsReader.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/io/ToolchainsReader.java b/maven-core/src/main/java/org/apache/maven/toolchain/io/ToolchainsReader.java
index d5afb90..44dc2bd 100644
--- a/maven-core/src/main/java/org/apache/maven/toolchain/io/ToolchainsReader.java
+++ b/maven-core/src/main/java/org/apache/maven/toolchain/io/ToolchainsReader.java
@@ -31,7 +31,7 @@ import org.apache.maven.toolchain.model.PersistedToolchains;
  * Handles deserialization of toolchains from some kind of textual format like XML.
  *
  * @author Robert Scholte
- * @since 3.2.6
+ * @since 3.3.0
  */
 public interface ToolchainsReader
 {


[17/50] [abbrv] maven git commit: [MNG-5740] added maven-builder-support to dependency image

Posted by ah...@apache.org.
[MNG-5740] added maven-builder-support to dependency image

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

Branch: refs/heads/slf4j-log4j2
Commit: e7f3768b51303c07895baf874b7c15350b8cc041
Parents: c6faf8d
Author: Hervé Boutemy <hb...@apache.org>
Authored: Sat Feb 28 18:11:18 2015 +0100
Committer: Hervé Boutemy <hb...@apache.org>
Committed: Sat Feb 28 18:12:16 2015 +0100

----------------------------------------------------------------------
 src/site/resources/images/maven-deps.png | Bin 58951 -> 73105 bytes
 src/site/xdoc/index.xml                  |  52 +++++++++++++-------------
 src/site/xdoc/maven-deps.odg             | Bin 19516 -> 32324 bytes
 3 files changed, 26 insertions(+), 26 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/e7f3768b/src/site/resources/images/maven-deps.png
----------------------------------------------------------------------
diff --git a/src/site/resources/images/maven-deps.png b/src/site/resources/images/maven-deps.png
index 2965e88..d23033f 100644
Binary files a/src/site/resources/images/maven-deps.png and b/src/site/resources/images/maven-deps.png differ

http://git-wip-us.apache.org/repos/asf/maven/blob/e7f3768b/src/site/xdoc/index.xml
----------------------------------------------------------------------
diff --git a/src/site/xdoc/index.xml b/src/site/xdoc/index.xml
index 47e83b9..918824c 100644
--- a/src/site/xdoc/index.xml
+++ b/src/site/xdoc/index.xml
@@ -40,35 +40,35 @@
     process.</p>
 
       <p>
-        <img src="images/maven-deps.png" width="731" height="538" border="0" usemap="#Maven_dependencies" />
+        <img src="images/maven-deps.png" width="784" height="595" border="0" usemap="#Maven_dependencies" />
         <map name="Maven_dependencies">
-          <area shape="rect" coords="213,0,338,32"    alt="apache-maven"  href="apache-maven/" />
-          <area shape="rect" coords="213,52,338,85"   alt="maven-embedder" href="maven-embedder/" />
-          <area shape="rect" coords="212,105,338,138" alt="maven-compat" href="maven-compat/" />
-          <area shape="rect" coords="213,158,338,191" alt="maven-core" href="maven-core/" />
-          <area shape="rect" coords="110,207,258,240" alt="maven-aether-provider" href="maven-aether-provider/" />
-          <area shape="rect" coords="0,256,180,289"   alt="maven-repository-metadata" href="maven-repository-metadata/" />
-          <area shape="rect" coords="230,309,321,342" alt="maven-plugin-api" href="maven-plugin-api/" />
-          <area shape="rect" coords="237,362,314,395" alt="maven-artifact" href="maven-artifact/" />
-          <area shape="rect" coords="357,158,494,191" alt="maven-settings-builder" href="maven-settings-builder/" />
-          <area shape="rect" coords="382,211,468,244" alt="maven-settings" href="maven-settings/" />
-          <area shape="rect" coords="363,256,487,289" alt="maven-model-builder" href="maven-model-builder/" />
-          <area shape="rect" coords="383,310,468,342" alt="maven-model" href="maven-model/" />
-          <area shape="rect" coords="514,52,660,85"   alt="commons-cli" href="http://commons.apache.org/cli/" />
-          <area shape="rect" coords="514,105,690,138" alt="wagon-provider-api" href="http://maven.apache.org/wagon/wagon-provider-api/" />
-          <area shape="rect" coords="514,158,645,191" alt="plexus-sec-dispatcher" href="http://plexus.codehaus.org/plexus-components/plexus-sec-dispatcher/project-reports.html" />
-          <area shape="rect" coords="543,207,617,240" alt="plexus-cipher" href="http://plexus.codehaus.org/plexus-components/plexus-cipher/project-reports.html" />
-          <area shape="rect" coords="514,257,660,289" alt="plexus-interpolation" href="http://plexus.codehaus.org/plexus-components/plexus-interpolation/" />
-          <area shape="rect" coords="514,324,724,357" alt="plexus-component-annotations" href="http://plexus.codehaus.org/plexus-containers/plexus-component-annotations/" />
-          <area shape="rect" coords="514,362,637,395" alt="plexus-classworlds" href="http://plexus.codehaus.org/plexus-classworlds/" />
-          <area shape="rect" coords="639,411,724,444" alt="plexus-utils" href="http://plexus.codehaus.org/plexus-utils/" />
-          <area shape="rect" coords="507,150,731,455" alt="plexus" href="http://plexus.codehaus.org/" />
-          <area shape="rect" coords="65,306,225,436"  alt="aether" href="http://www.eclipse.org/projects/project_summary.php?projectid=technology.aether" />
-          <area shape="rect" coords="362,356,485,537" alt="sisu" href="http://www.eclipse.org/projects/project_summary.php?projectid=technology.sisu" />
-          <area shape="rect" coords="485,469,580,500" alt="guice" href="http://code.google.com/p/google-guice/" />
+          <area shape="rect" coords="228,1,361,36"    alt="apache-maven"  href="apache-maven/" />
+          <area shape="rect" coords="228,58,361,95"   alt="maven-embedder" href="maven-embedder/" />
+          <area shape="rect" coords="228,116,361,152" alt="maven-compat" href="maven-compat/" />
+          <area shape="rect" coords="228,175,361,211" alt="maven-core" href="maven-core/" />
+          <area shape="rect" coords="118,233,275,269" alt="maven-aether-provider" href="maven-aether-provider/" />
+          <area shape="rect" coords="0,287,192,323"   alt="maven-repository-metadata" href="maven-repository-metadata/" />
+          <area shape="rect" coords="245,342,343,378" alt="maven-plugin-api" href="maven-plugin-api/" />
+          <area shape="rect" coords="253,401,336,436" alt="maven-artifact" href="maven-artifact/" />
+          <area shape="rect" coords="296,234,442,270" alt="maven-builder-support" href="maven-builder-support/" />
+          <area shape="rect" coords="382,176,528,211" alt="maven-settings-builder" href="maven-settings-builder/" />
+          <area shape="rect" coords="446,234,537,269" alt="maven-settings" href="maven-settings/" />
+          <area shape="rect" coords="388,284,521,319" alt="maven-model-builder" href="maven-model-builder/" />
+          <area shape="rect" coords="409,342,500,378" alt="maven-model" href="maven-model/" />
+          <area shape="rect" coords="551,58,707,94"   alt="commons-cli" href="http://commons.apache.org/cli/" />
+          <area shape="rect" coords="551,116,739,152" alt="wagon-provider-api" href="http://maven.apache.org/wagon/wagon-provider-api/" />
+          <area shape="rect" coords="550,175,690,211" alt="plexus-sec-dispatcher" href="http://plexus.codehaus.org/plexus-components/plexus-sec-dispatcher/project-reports.html" />
+          <area shape="rect" coords="581,230,660,265" alt="plexus-cipher" href="http://plexus.codehaus.org/plexus-components/plexus-cipher/project-reports.html" />
+          <area shape="rect" coords="551,284,707,320" alt="plexus-interpolation" href="http://plexus.codehaus.org/plexus-components/plexus-interpolation/" />
+          <area shape="rect" coords="551,359,776,395" alt="plexus-component-annotations" href="http://plexus.codehaus.org/plexus-containers/plexus-component-annotations/" />
+          <area shape="rect" coords="550,401,682,437" alt="plexus-classworlds" href="http://plexus.codehaus.org/plexus-classworlds/" />
+          <area shape="rect" coords="685,455,775,491" alt="plexus-utils" href="http://plexus.codehaus.org/plexus-utils/" />
+          <area shape="rect" coords="542,167,783,502" alt="plexus" href="http://plexus.codehaus.org/" />
+          <area shape="rect" coords="68,338,240,482"  alt="aether" href="http://www.eclipse.org/projects/project_summary.php?projectid=technology.aether" />
+          <area shape="rect" coords="388,393,520,594" alt="sisu" href="http://www.eclipse.org/projects/project_summary.php?projectid=technology.sisu" />
+          <area shape="rect" coords="519,518,621,554" alt="guice" href="http://code.google.com/p/google-guice/" />
         </map>
       </p>
-
     </section>
 
   </body>

http://git-wip-us.apache.org/repos/asf/maven/blob/e7f3768b/src/site/xdoc/maven-deps.odg
----------------------------------------------------------------------
diff --git a/src/site/xdoc/maven-deps.odg b/src/site/xdoc/maven-deps.odg
index 089f538..9d4193a 100644
Binary files a/src/site/xdoc/maven-deps.odg and b/src/site/xdoc/maven-deps.odg differ


[42/50] [abbrv] maven git commit: [maven-release-plugin] prepare for next development iteration

Posted by ah...@apache.org.
[maven-release-plugin] prepare for next development iteration


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

Branch: refs/heads/slf4j-log4j2
Commit: 1d3d2fd3df67f089a17d0c1d61cc504eb16058d7
Parents: cab6659
Author: Jason van Zyl <ja...@tesla.io>
Authored: Fri Mar 13 13:05:42 2015 -0700
Committer: Jason van Zyl <ja...@tesla.io>
Committed: Fri Mar 13 13:05:42 2015 -0700

----------------------------------------------------------------------
 apache-maven/pom.xml              | 4 ++--
 maven-aether-provider/pom.xml     | 4 ++--
 maven-artifact/pom.xml            | 4 ++--
 maven-builder-support/pom.xml     | 4 ++--
 maven-compat/pom.xml              | 4 ++--
 maven-core/pom.xml                | 4 ++--
 maven-embedder/pom.xml            | 4 ++--
 maven-model-builder/pom.xml       | 4 ++--
 maven-model/pom.xml               | 4 ++--
 maven-plugin-api/pom.xml          | 4 ++--
 maven-repository-metadata/pom.xml | 4 ++--
 maven-settings-builder/pom.xml    | 4 ++--
 maven-settings/pom.xml            | 4 ++--
 pom.xml                           | 4 ++--
 14 files changed, 28 insertions(+), 28 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/1d3d2fd3/apache-maven/pom.xml
----------------------------------------------------------------------
diff --git a/apache-maven/pom.xml b/apache-maven/pom.xml
index a75b6a5..e8277b5 100644
--- a/apache-maven/pom.xml
+++ b/apache-maven/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1</version>
+    <version>3.3.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>apache-maven</artifactId>
@@ -37,7 +37,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.1</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/1d3d2fd3/maven-aether-provider/pom.xml
----------------------------------------------------------------------
diff --git a/maven-aether-provider/pom.xml b/maven-aether-provider/pom.xml
index 495fed6..dafa2cb 100644
--- a/maven-aether-provider/pom.xml
+++ b/maven-aether-provider/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1</version>
+    <version>3.3.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-aether-provider</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.1</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/1d3d2fd3/maven-artifact/pom.xml
----------------------------------------------------------------------
diff --git a/maven-artifact/pom.xml b/maven-artifact/pom.xml
index 0e7d6c4..ef5b10e 100644
--- a/maven-artifact/pom.xml
+++ b/maven-artifact/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1</version>
+    <version>3.3.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-artifact</artifactId>
@@ -26,7 +26,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.1</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/1d3d2fd3/maven-builder-support/pom.xml
----------------------------------------------------------------------
diff --git a/maven-builder-support/pom.xml b/maven-builder-support/pom.xml
index eae1e7c..b54ba95 100644
--- a/maven-builder-support/pom.xml
+++ b/maven-builder-support/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1</version>
+    <version>3.3.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-builder-support</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.1</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/1d3d2fd3/maven-compat/pom.xml
----------------------------------------------------------------------
diff --git a/maven-compat/pom.xml b/maven-compat/pom.xml
index 52f8db6..4065909 100644
--- a/maven-compat/pom.xml
+++ b/maven-compat/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1</version>
+    <version>3.3.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-compat</artifactId>
@@ -27,7 +27,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.1</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <properties>

http://git-wip-us.apache.org/repos/asf/maven/blob/1d3d2fd3/maven-core/pom.xml
----------------------------------------------------------------------
diff --git a/maven-core/pom.xml b/maven-core/pom.xml
index 8f5b815..a718e47 100644
--- a/maven-core/pom.xml
+++ b/maven-core/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1</version>
+    <version>3.3.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-core</artifactId>
@@ -27,7 +27,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.1</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <properties>

http://git-wip-us.apache.org/repos/asf/maven/blob/1d3d2fd3/maven-embedder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-embedder/pom.xml b/maven-embedder/pom.xml
index 408b878..53f0724 100644
--- a/maven-embedder/pom.xml
+++ b/maven-embedder/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1</version>
+    <version>3.3.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-embedder</artifactId>
@@ -27,7 +27,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.1</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/1d3d2fd3/maven-model-builder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-model-builder/pom.xml b/maven-model-builder/pom.xml
index 511a51e..91e5db7 100644
--- a/maven-model-builder/pom.xml
+++ b/maven-model-builder/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1</version>
+    <version>3.3.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-model-builder</artifactId>
@@ -27,7 +27,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.1</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/1d3d2fd3/maven-model/pom.xml
----------------------------------------------------------------------
diff --git a/maven-model/pom.xml b/maven-model/pom.xml
index fbe3009..97908fc 100644
--- a/maven-model/pom.xml
+++ b/maven-model/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1</version>
+    <version>3.3.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-model</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.1</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <properties>

http://git-wip-us.apache.org/repos/asf/maven/blob/1d3d2fd3/maven-plugin-api/pom.xml
----------------------------------------------------------------------
diff --git a/maven-plugin-api/pom.xml b/maven-plugin-api/pom.xml
index 8017a61..64d43a0 100644
--- a/maven-plugin-api/pom.xml
+++ b/maven-plugin-api/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1</version>
+    <version>3.3.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-plugin-api</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.1</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/1d3d2fd3/maven-repository-metadata/pom.xml
----------------------------------------------------------------------
diff --git a/maven-repository-metadata/pom.xml b/maven-repository-metadata/pom.xml
index db8d1d7..e1888cc 100644
--- a/maven-repository-metadata/pom.xml
+++ b/maven-repository-metadata/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1</version>
+    <version>3.3.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-repository-metadata</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.1</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/1d3d2fd3/maven-settings-builder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-settings-builder/pom.xml b/maven-settings-builder/pom.xml
index ddd75fc..ff4fcd4 100644
--- a/maven-settings-builder/pom.xml
+++ b/maven-settings-builder/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1</version>
+    <version>3.3.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-settings-builder</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.1</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/1d3d2fd3/maven-settings/pom.xml
----------------------------------------------------------------------
diff --git a/maven-settings/pom.xml b/maven-settings/pom.xml
index 62a42c0..f9c363f 100644
--- a/maven-settings/pom.xml
+++ b/maven-settings/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1</version>
+    <version>3.3.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-settings</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.1</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/1d3d2fd3/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 420f634..92fce44 100644
--- a/pom.xml
+++ b/pom.xml
@@ -26,7 +26,7 @@
   </parent>
 
   <artifactId>maven</artifactId>
-  <version>3.3.1</version>
+  <version>3.3.2-SNAPSHOT</version>
   <packaging>pom</packaging>
 
   <name>Apache Maven</name>
@@ -91,7 +91,7 @@
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
     <url>https://github.com/apache/maven/tree/${project.scm.tag}</url>
-    <tag>maven-3.3.1</tag>
+    <tag>master</tag>
   </scm>
   <issueManagement>
     <system>jira</system>


[23/50] [abbrv] maven git commit: updated parent pom, cleanup and updated m-checkstyle-p

Posted by ah...@apache.org.
updated parent pom, cleanup and updated m-checkstyle-p

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

Branch: refs/heads/slf4j-log4j2
Commit: cf33545c2efe4f765007c4baaf242aaf8000df73
Parents: eecdc9a
Author: Hervé Boutemy <hb...@apache.org>
Authored: Wed Mar 4 03:19:03 2015 +0100
Committer: Hervé Boutemy <hb...@apache.org>
Committed: Wed Mar 4 03:19:03 2015 +0100

----------------------------------------------------------------------
 pom.xml | 21 +++++++++++----------
 1 file changed, 11 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/cf33545c/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index b1c214c..2bb83b1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven-parent</artifactId>
-    <version>25</version>
+    <version>26</version>
     <relativePath>../pom/maven/pom.xml</relativePath>
   </parent>
 
@@ -451,13 +451,6 @@
           <configuration>
             <topSiteURL>scm:svn:https://svn.apache.org/repos/infra/websites/production/maven/content/${maven.site.path}</topSiteURL>
           </configuration>
-          <dependencies>
-            <dependency>
-              <groupId>org.apache.maven.doxia</groupId>
-              <artifactId>doxia-module-markdown</artifactId>
-              <version>1.5</version>
-            </dependency>
-          </dependencies>
         </plugin>
         <plugin>
           <groupId>org.apache.maven.plugins</groupId>
@@ -501,6 +494,11 @@
             </lifecycleMappingMetadata>
           </configuration>
         </plugin>
+        <plugin><!-- TODO remove when upgrading parent to 27 -->
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-checkstyle-plugin</artifactId>
+          <version>2.14</version>
+        </plugin>
       </plugins>
     </pluginManagement>
     <plugins>
@@ -549,8 +547,6 @@
             <exclude>.repository/**</exclude> <!-- jenkins with local maven repository -->
             <exclude>.maven/spy.log</exclude> <!-- hudson maven3 integration log -->
           </excludes>
-          <!-- maven-parent:24 sets ignore errors, but core is ahead -->
-          <ignoreErrors>false</ignoreErrors>
         </configuration>
       </plugin>
     </plugins>
@@ -615,6 +611,11 @@
               </reportSet>
             </reportSets>
           </plugin>
+          <plugin><!-- TODO remove when upgrading parent to 27 -->
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-checkstyle-plugin</artifactId>
+            <version>2.13</version>
+          </plugin>
         </plugins>
       </reporting>
     </profile>


[37/50] [abbrv] maven git commit: [MNG-5767] added documentation for project-specific jvm options and maven command-line parameters

Posted by ah...@apache.org.
[MNG-5767] added documentation for project-specific jvm options and
maven command-line parameters

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

Branch: refs/heads/slf4j-log4j2
Commit: cb356ed478c5c42489b394720990a1696cb27b52
Parents: cc429e8
Author: Hervé Boutemy <hb...@apache.org>
Authored: Thu Mar 12 23:16:02 2015 +0100
Committer: Hervé Boutemy <hb...@apache.org>
Committed: Thu Mar 12 23:16:02 2015 +0100

----------------------------------------------------------------------
 maven-embedder/src/site/apt/index.apt.vm | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/cb356ed4/maven-embedder/src/site/apt/index.apt.vm
----------------------------------------------------------------------
diff --git a/maven-embedder/src/site/apt/index.apt.vm b/maven-embedder/src/site/apt/index.apt.vm
index 408d83f..4df712c 100644
--- a/maven-embedder/src/site/apt/index.apt.vm
+++ b/maven-embedder/src/site/apt/index.apt.vm
@@ -20,7 +20,7 @@
  -----
  Hervé Boutemy
  -----
- 2012-04-29
+ 2015-03-12
  -----
 
 ${project.name}
@@ -32,3 +32,9 @@ ${project.name}
  * {{{./cli.html}CLI options}},
 
  * {{{./logging.html}logging API}}.
+
+ * since 3.3.0, per project settings can be defined by files in <<<.mvn/>>> directory:
+
+   * <<<.mvn/jvm.config>>> containing jvm options,
+
+   * <<<.mvn/maven.config>>> containing Maven command-line parameter.


[02/50] [abbrv] maven git commit: exit session scope in finally {} block

Posted by ah...@apache.org.
exit session scope in finally {} block

Signed-off-by: Igor Fedorenko <if...@apache.org>


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

Branch: refs/heads/slf4j-log4j2
Commit: e2a07928401270bc1dc5fbc97c88d975f91861ee
Parents: 6b79ac5
Author: Igor Fedorenko <if...@apache.org>
Authored: Sat Feb 14 08:56:22 2015 -0500
Committer: Igor Fedorenko <if...@apache.org>
Committed: Fri Feb 20 10:26:15 2015 -0500

----------------------------------------------------------------------
 .../java/org/apache/maven/DefaultMaven.java     | 29 +++++++++++++-------
 1 file changed, 19 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/e2a07928/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/DefaultMaven.java b/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
index 83d6f4f..385ff74 100644
--- a/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
+++ b/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
@@ -170,19 +170,32 @@ public class DefaultMaven
             return addExceptionToResult( result, e );
         }
 
-        DefaultRepositorySystemSession repoSession = (DefaultRepositorySystemSession) newRepositorySession( request );
-
-        MavenSession session = new MavenSession( container, repoSession, request, result );
-
         //
         // We enter the session scope right after the MavenSession creation and before any of the AbstractLifecycleParticipant lookups
         // so that @SessionScoped components can be @Injected into AbstractLifecycleParticipants.
         //
         sessionScope.enter();
-        sessionScope.seed( MavenSession.class, session );
+        try
+        {
+            DefaultRepositorySystemSession repoSession =
+                (DefaultRepositorySystemSession) newRepositorySession( request );
+            MavenSession session = new MavenSession( container, repoSession, request, result );
 
-        legacySupport.setSession( session );
+            sessionScope.seed( MavenSession.class, session );
+
+            legacySupport.setSession( session );
+
+            return doExecute( request, session, result, repoSession );
+        }
+        finally
+        {
+            sessionScope.exit();
+        }
+    }
 
+    private MavenExecutionResult doExecute( MavenExecutionRequest request, MavenSession session,
+                                            MavenExecutionResult result, DefaultRepositorySystemSession repoSession )
+    {
         try
         {
             for ( AbstractMavenLifecycleParticipant listener : getLifecycleParticipants( Collections.<MavenProject>emptyList() ) )
@@ -321,10 +334,6 @@ public class DefaultMaven
             {
                 return addExceptionToResult( result, e );
             }
-            finally
-            {
-                sessionScope.exit();
-            }
         }
 
         return result;


[27/50] [abbrv] maven git commit: MNG-5779 Export org.slf4j.spi.* to fix the Javadoc plugin error

Posted by ah...@apache.org.
MNG-5779 Export org.slf4j.spi.* to fix the Javadoc plugin error


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

Branch: refs/heads/slf4j-log4j2
Commit: 57a6196422873eaf2f00a282b33894a74dcfd19c
Parents: 772df4e
Author: Jason van Zyl <ja...@tesla.io>
Authored: Thu Mar 5 00:39:46 2015 -0800
Committer: Jason van Zyl <ja...@tesla.io>
Committed: Thu Mar 5 00:40:45 2015 -0800

----------------------------------------------------------------------
 maven-core/src/main/resources/META-INF/maven/extension.xml | 1 +
 1 file changed, 1 insertion(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/57a61964/maven-core/src/main/resources/META-INF/maven/extension.xml
----------------------------------------------------------------------
diff --git a/maven-core/src/main/resources/META-INF/maven/extension.xml b/maven-core/src/main/resources/META-INF/maven/extension.xml
index 3089939..6abf218 100644
--- a/maven-core/src/main/resources/META-INF/maven/extension.xml
+++ b/maven-core/src/main/resources/META-INF/maven/extension.xml
@@ -115,6 +115,7 @@ under the License.
 
     <!-- SLF4J -->
     <exportedPackage>org.slf4j.*</exportedPackage>
+    <exportedPackage>org.slf4j.spi.*</exportedPackage>
 
   </exportedPackages>
 


[03/50] [abbrv] maven git commit: added javax.inject and slf4j-api to the exported artifacts list

Posted by ah...@apache.org.
added javax.inject and slf4j-api to the exported artifacts list

javax.inject.* and org.slf4j.* packages were already exported, but
corresponding artifacts were not. this resulted in same classes
present in multiple classlaoders and caused hard-to-troubleshoot
build failures in some cases.

Signed-off-by: Igor Fedorenko <if...@apache.org>


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

Branch: refs/heads/slf4j-log4j2
Commit: 586e65f38170eb62b8d3cd52ba0be65529b7a3c5
Parents: 8631d79
Author: Igor Fedorenko <if...@apache.org>
Authored: Fri Feb 6 11:08:43 2015 -0500
Committer: Igor Fedorenko <if...@apache.org>
Committed: Fri Feb 20 10:26:15 2015 -0500

----------------------------------------------------------------------
 maven-core/src/main/resources/META-INF/maven/extension.xml | 3 +++
 1 file changed, 3 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/586e65f3/maven-core/src/main/resources/META-INF/maven/extension.xml
----------------------------------------------------------------------
diff --git a/maven-core/src/main/resources/META-INF/maven/extension.xml b/maven-core/src/main/resources/META-INF/maven/extension.xml
index 667fcd0..3089939 100644
--- a/maven-core/src/main/resources/META-INF/maven/extension.xml
+++ b/maven-core/src/main/resources/META-INF/maven/extension.xml
@@ -152,6 +152,9 @@ under the License.
     <exportedArtifact>org.eclipse.aether:aether-spi</exportedArtifact>
     <exportedArtifact>org.eclipse.aether:aether-impl</exportedArtifact>
 
+    <exportedArtifact>javax.inject:javax.inject</exportedArtifact>
+    <exportedArtifact>org.slf4j:slf4j-api</exportedArtifact>
+
     <!--
       | We must also filter out the old or NoClassDefFoundErrors will surface  
      -->


[41/50] [abbrv] maven git commit: [maven-release-plugin] prepare release maven-3.3.1

Posted by ah...@apache.org.
[maven-release-plugin] prepare release maven-3.3.1


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

Branch: refs/heads/slf4j-log4j2
Commit: cab6659f9874fa96462afef40fcf6bc033d58c1c
Parents: 0d32cbe
Author: Jason van Zyl <ja...@tesla.io>
Authored: Fri Mar 13 13:05:27 2015 -0700
Committer: Jason van Zyl <ja...@tesla.io>
Committed: Fri Mar 13 13:05:27 2015 -0700

----------------------------------------------------------------------
 apache-maven/pom.xml              | 4 ++--
 maven-aether-provider/pom.xml     | 4 ++--
 maven-artifact/pom.xml            | 4 ++--
 maven-builder-support/pom.xml     | 4 ++--
 maven-compat/pom.xml              | 4 ++--
 maven-core/pom.xml                | 4 ++--
 maven-embedder/pom.xml            | 4 ++--
 maven-model-builder/pom.xml       | 4 ++--
 maven-model/pom.xml               | 4 ++--
 maven-plugin-api/pom.xml          | 4 ++--
 maven-repository-metadata/pom.xml | 4 ++--
 maven-settings-builder/pom.xml    | 4 ++--
 maven-settings/pom.xml            | 4 ++--
 pom.xml                           | 4 ++--
 14 files changed, 28 insertions(+), 28 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/cab6659f/apache-maven/pom.xml
----------------------------------------------------------------------
diff --git a/apache-maven/pom.xml b/apache-maven/pom.xml
index 90b649b..a75b6a5 100644
--- a/apache-maven/pom.xml
+++ b/apache-maven/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1-SNAPSHOT</version>
+    <version>3.3.1</version>
   </parent>
 
   <artifactId>apache-maven</artifactId>
@@ -37,7 +37,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.1</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/cab6659f/maven-aether-provider/pom.xml
----------------------------------------------------------------------
diff --git a/maven-aether-provider/pom.xml b/maven-aether-provider/pom.xml
index 77ec510..495fed6 100644
--- a/maven-aether-provider/pom.xml
+++ b/maven-aether-provider/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1-SNAPSHOT</version>
+    <version>3.3.1</version>
   </parent>
 
   <artifactId>maven-aether-provider</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.1</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/cab6659f/maven-artifact/pom.xml
----------------------------------------------------------------------
diff --git a/maven-artifact/pom.xml b/maven-artifact/pom.xml
index 4c1e908..0e7d6c4 100644
--- a/maven-artifact/pom.xml
+++ b/maven-artifact/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1-SNAPSHOT</version>
+    <version>3.3.1</version>
   </parent>
 
   <artifactId>maven-artifact</artifactId>
@@ -26,7 +26,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.1</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/cab6659f/maven-builder-support/pom.xml
----------------------------------------------------------------------
diff --git a/maven-builder-support/pom.xml b/maven-builder-support/pom.xml
index f88a000..eae1e7c 100644
--- a/maven-builder-support/pom.xml
+++ b/maven-builder-support/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1-SNAPSHOT</version>
+    <version>3.3.1</version>
   </parent>
 
   <artifactId>maven-builder-support</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.1</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/cab6659f/maven-compat/pom.xml
----------------------------------------------------------------------
diff --git a/maven-compat/pom.xml b/maven-compat/pom.xml
index 3b361f6..52f8db6 100644
--- a/maven-compat/pom.xml
+++ b/maven-compat/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1-SNAPSHOT</version>
+    <version>3.3.1</version>
   </parent>
 
   <artifactId>maven-compat</artifactId>
@@ -27,7 +27,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.1</tag>
   </scm>
 
   <properties>

http://git-wip-us.apache.org/repos/asf/maven/blob/cab6659f/maven-core/pom.xml
----------------------------------------------------------------------
diff --git a/maven-core/pom.xml b/maven-core/pom.xml
index 78a91d5..8f5b815 100644
--- a/maven-core/pom.xml
+++ b/maven-core/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1-SNAPSHOT</version>
+    <version>3.3.1</version>
   </parent>
 
   <artifactId>maven-core</artifactId>
@@ -27,7 +27,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.1</tag>
   </scm>
 
   <properties>

http://git-wip-us.apache.org/repos/asf/maven/blob/cab6659f/maven-embedder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-embedder/pom.xml b/maven-embedder/pom.xml
index 8dbd9d1..408b878 100644
--- a/maven-embedder/pom.xml
+++ b/maven-embedder/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1-SNAPSHOT</version>
+    <version>3.3.1</version>
   </parent>
 
   <artifactId>maven-embedder</artifactId>
@@ -27,7 +27,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.1</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/cab6659f/maven-model-builder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-model-builder/pom.xml b/maven-model-builder/pom.xml
index ef8e423..511a51e 100644
--- a/maven-model-builder/pom.xml
+++ b/maven-model-builder/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1-SNAPSHOT</version>
+    <version>3.3.1</version>
   </parent>
 
   <artifactId>maven-model-builder</artifactId>
@@ -27,7 +27,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.1</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/cab6659f/maven-model/pom.xml
----------------------------------------------------------------------
diff --git a/maven-model/pom.xml b/maven-model/pom.xml
index 1cc60e8..fbe3009 100644
--- a/maven-model/pom.xml
+++ b/maven-model/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1-SNAPSHOT</version>
+    <version>3.3.1</version>
   </parent>
 
   <artifactId>maven-model</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.1</tag>
   </scm>
 
   <properties>

http://git-wip-us.apache.org/repos/asf/maven/blob/cab6659f/maven-plugin-api/pom.xml
----------------------------------------------------------------------
diff --git a/maven-plugin-api/pom.xml b/maven-plugin-api/pom.xml
index 209b16f..8017a61 100644
--- a/maven-plugin-api/pom.xml
+++ b/maven-plugin-api/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1-SNAPSHOT</version>
+    <version>3.3.1</version>
   </parent>
 
   <artifactId>maven-plugin-api</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.1</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/cab6659f/maven-repository-metadata/pom.xml
----------------------------------------------------------------------
diff --git a/maven-repository-metadata/pom.xml b/maven-repository-metadata/pom.xml
index 18d1465..db8d1d7 100644
--- a/maven-repository-metadata/pom.xml
+++ b/maven-repository-metadata/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1-SNAPSHOT</version>
+    <version>3.3.1</version>
   </parent>
 
   <artifactId>maven-repository-metadata</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.1</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/cab6659f/maven-settings-builder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-settings-builder/pom.xml b/maven-settings-builder/pom.xml
index 55f47a0..ddd75fc 100644
--- a/maven-settings-builder/pom.xml
+++ b/maven-settings-builder/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1-SNAPSHOT</version>
+    <version>3.3.1</version>
   </parent>
 
   <artifactId>maven-settings-builder</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.1</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/cab6659f/maven-settings/pom.xml
----------------------------------------------------------------------
diff --git a/maven-settings/pom.xml b/maven-settings/pom.xml
index 7c2314b..62a42c0 100644
--- a/maven-settings/pom.xml
+++ b/maven-settings/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.1-SNAPSHOT</version>
+    <version>3.3.1</version>
   </parent>
 
   <artifactId>maven-settings</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.1</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/cab6659f/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index f48e75d..420f634 100644
--- a/pom.xml
+++ b/pom.xml
@@ -26,7 +26,7 @@
   </parent>
 
   <artifactId>maven</artifactId>
-  <version>3.3.1-SNAPSHOT</version>
+  <version>3.3.1</version>
   <packaging>pom</packaging>
 
   <name>Apache Maven</name>
@@ -91,7 +91,7 @@
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
     <url>https://github.com/apache/maven/tree/${project.scm.tag}</url>
-    <tag>master</tag>
+    <tag>maven-3.3.1</tag>
   </scm>
   <issueManagement>
     <system>jira</system>


[22/50] [abbrv] maven git commit: reintroduced LineLength Checkstyle rule and fixed code...

Posted by ah...@apache.org.
reintroduced LineLength Checkstyle rule and fixed code...

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

Branch: refs/heads/slf4j-log4j2
Commit: eecdc9a1719f8220e5c4a9633f75cf3845752b26
Parents: be3fb20
Author: Hervé Boutemy <hb...@apache.org>
Authored: Wed Mar 4 03:17:46 2015 +0100
Committer: Hervé Boutemy <hb...@apache.org>
Committed: Wed Mar 4 03:17:46 2015 +0100

----------------------------------------------------------------------
 maven-core/pom.xml                              |  2 +-
 .../maven/DefaultArtifactFilterManager.java     |  3 ++-
 .../java/org/apache/maven/DefaultMaven.java     |  9 +++----
 .../DefaultProjectDependenciesResolver.java     |  3 ++-
 .../maven/ProjectDependenciesResolver.java      | 10 +++++---
 .../java/org/apache/maven/SessionScoped.java    |  3 ++-
 .../maven/bridge/MavenRepositorySystem.java     | 12 ++++++---
 .../classrealm/DefaultClassRealmManager.java    |  3 ++-
 .../exception/DefaultExceptionHandler.java      |  3 ++-
 .../execution/DefaultMavenExecutionRequest.java |  3 ++-
 .../DefaultMavenExecutionRequestPopulator.java  |  7 ++---
 .../apache/maven/execution/MavenSession.java    |  4 +--
 .../apache/maven/graph/DefaultGraphBuilder.java |  7 ++---
 .../lifecycle/DefaultLifecycleExecutor.java     |  3 ++-
 .../lifecycle/MojoExecutionConfigurator.java    |  4 +--
 ...DefaultLifecycleExecutionPlanCalculator.java | 17 +++++++-----
 .../internal/LifecycleDependencyResolver.java   |  6 +++--
 .../internal/LifecycleModuleBuilder.java        |  3 ++-
 .../lifecycle/internal/LifecycleStarter.java    |  6 +++--
 .../lifecycle/internal/builder/Builder.java     |  6 ++---
 .../internal/builder/BuilderCommon.java         |  4 +--
 .../maven/plugin/DefaultBuildPluginManager.java |  6 +++--
 .../apache/maven/plugin/MavenPluginManager.java |  3 ++-
 .../maven/plugin/PluginContainerException.java  |  3 ++-
 .../maven/plugin/PluginExecutionException.java  |  3 ++-
 .../PluginParameterExpressionEvaluator.java     | 20 ++++++++++-----
 .../plugin/internal/DefaultLegacySupport.java   |  3 ++-
 .../internal/DefaultMavenPluginManager.java     |  3 ++-
 .../DefaultPluginDependenciesResolver.java      |  3 ++-
 .../version/DefaultPluginVersionRequest.java    |  3 ++-
 .../project/DefaultMavenProjectHelper.java      |  3 ++-
 .../maven/project/DefaultProjectBuilder.java    | 27 ++++++++++++--------
 .../org/apache/maven/project/MavenProject.java  | 11 ++++----
 .../maven/project/MavenProjectHelper.java       |  3 ++-
 .../maven/project/ProjectModelResolver.java     |  3 ++-
 .../project/artifact/MavenMetadataSource.java   |  2 +-
 .../maven/repository/RepositorySystem.java      |  3 ++-
 .../internal/DefaultRuntimeInformation.java     |  3 ++-
 .../toolchain/DefaultToolchainManager.java      |  3 ++-
 .../building/DefaultToolchainsBuilder.java      |  2 +-
 .../building/ToolchainsBuildingRequest.java     |  8 +++---
 .../maven/toolchain/io/ToolchainsReader.java    |  4 +--
 42 files changed, 144 insertions(+), 93 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/pom.xml
----------------------------------------------------------------------
diff --git a/maven-core/pom.xml b/maven-core/pom.xml
index 75285a0..035f5ad 100644
--- a/maven-core/pom.xml
+++ b/maven-core/pom.xml
@@ -31,7 +31,7 @@
   </scm>
 
   <properties>
-    <checkstyle.violation.ignore>RedundantThrows,NewlineAtEndOfFile,ParameterNumber,MethodLength,FileLength,JavadocType,LineLength,MethodName,MagicNumber,ConstantName,VisibilityModifier,InnerAssignment</checkstyle.violation.ignore>
+    <checkstyle.violation.ignore>RedundantThrows,NewlineAtEndOfFile,ParameterNumber,MethodLength,FileLength,JavadocType,MethodName,MagicNumber,ConstantName,VisibilityModifier,InnerAssignment</checkstyle.violation.ignore>
   </properties>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/DefaultArtifactFilterManager.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/DefaultArtifactFilterManager.java b/maven-core/src/main/java/org/apache/maven/DefaultArtifactFilterManager.java
index 46f8af0..1962f91 100644
--- a/maven-core/src/main/java/org/apache/maven/DefaultArtifactFilterManager.java
+++ b/maven-core/src/main/java/org/apache/maven/DefaultArtifactFilterManager.java
@@ -49,7 +49,8 @@ public class DefaultArtifactFilterManager
     private final Set<String> coreArtifacts;
 
     @Inject
-    public DefaultArtifactFilterManager( List<ArtifactFilterManagerDelegate> delegates, CoreExportsProvider coreExports )
+    public DefaultArtifactFilterManager( List<ArtifactFilterManagerDelegate> delegates,
+                                         CoreExportsProvider coreExports )
     {
         this.delegates = delegates;
         this.coreArtifacts = coreExports.get().getExportedArtifacts();

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/DefaultMaven.java b/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
index 3009301..94e75e0 100644
--- a/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
+++ b/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
@@ -118,10 +118,8 @@ public class DefaultMaven
             }
             else
             {
-                result = addExceptionToResult( new DefaultMavenExecutionResult(), new InternalErrorException(
-                                                                                                              "Internal error: "
-                                                                                                                  + e,
-                                                                                                              e ) );
+                result = addExceptionToResult( new DefaultMavenExecutionResult(),
+                                               new InternalErrorException( "Internal error: " + e, e ) );
             }
         }
         finally
@@ -371,7 +369,8 @@ public class DefaultMaven
 
     private Collection<AbstractMavenLifecycleParticipant> getLifecycleParticipants( Collection<MavenProject> projects )
     {
-        Collection<AbstractMavenLifecycleParticipant> lifecycleListeners = new LinkedHashSet<AbstractMavenLifecycleParticipant>();
+        Collection<AbstractMavenLifecycleParticipant> lifecycleListeners =
+            new LinkedHashSet<AbstractMavenLifecycleParticipant>();
 
         ClassLoader originalClassLoader = Thread.currentThread().getContextClassLoader();
         try

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/DefaultProjectDependenciesResolver.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/DefaultProjectDependenciesResolver.java b/maven-core/src/main/java/org/apache/maven/DefaultProjectDependenciesResolver.java
index 3511d90..fa8be38 100644
--- a/maven-core/src/main/java/org/apache/maven/DefaultProjectDependenciesResolver.java
+++ b/maven-core/src/main/java/org/apache/maven/DefaultProjectDependenciesResolver.java
@@ -127,7 +127,8 @@ public class DefaultProjectDependenciesResolver
 
         if ( ! exclusions.isEmpty() )
         {
-            filter = new AndArtifactFilter( Arrays.asList( new ArtifactFilter[]{ new ExcludesArtifactFilter( exclusions ), scopeFilter } ) );
+            filter = new AndArtifactFilter( Arrays.asList( new ArtifactFilter[]{ 
+                new ExcludesArtifactFilter( exclusions ), scopeFilter } ) );
         }
         else
         {

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/ProjectDependenciesResolver.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/ProjectDependenciesResolver.java b/maven-core/src/main/java/org/apache/maven/ProjectDependenciesResolver.java
index 34e8609..01e6227 100644
--- a/maven-core/src/main/java/org/apache/maven/ProjectDependenciesResolver.java
+++ b/maven-core/src/main/java/org/apache/maven/ProjectDependenciesResolver.java
@@ -30,7 +30,8 @@ import org.apache.maven.project.MavenProject;
 
 @Deprecated
 /**
- * @deprecated As of 3.2.2, and there is no direct replacement. This is an internal class which was not marked as such, but should have been.
+ * @deprecated As of 3.2.2, and there is no direct replacement. This is an internal class which was not marked as such,
+ *             but should have been.
  * @author jvanzyl
  *
  */
@@ -84,10 +85,11 @@ public interface ProjectDependenciesResolver
      * @param projects The projects whose dependencies should be resolved, may be {@code null}.
      * @param scopes   The dependency scopes that should be resolved, may be {@code null}.
      * @param session  The current build session, must not be {@code null}.
-     * @return The transitive dependencies of the specified projects that match the requested scopes, never {@code null}
-     *         .
+     * @return The transitive dependencies of the specified projects that match the requested scopes, never
+     *         {@code null}.
      */
-    Set<Artifact> resolve( Collection<? extends MavenProject> projects, Collection<String> scopes, MavenSession session )
+    Set<Artifact> resolve( Collection<? extends MavenProject> projects, Collection<String> scopes,
+                           MavenSession session )
         throws ArtifactResolutionException, ArtifactNotFoundException;
 
 }

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/SessionScoped.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/SessionScoped.java b/maven-core/src/main/java/org/apache/maven/SessionScoped.java
index f44ddbf..63b1eb7 100644
--- a/maven-core/src/main/java/org/apache/maven/SessionScoped.java
+++ b/maven-core/src/main/java/org/apache/maven/SessionScoped.java
@@ -28,7 +28,8 @@ import java.lang.annotation.Target;
 import com.google.inject.ScopeAnnotation;
 
 /**
- * Indicates that annotated component should be instantiated before session starts and discarded after session execution completes.
+ * Indicates that annotated component should be instantiated before session starts and discarded after session execution
+ * completes.
  *
  * @author Jason van Zyl
  * @since 3.2.0

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/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 c0f682e..f33bc32 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
@@ -327,7 +327,8 @@ public class MavenRepositorySystem
     // Taken from LegacyRepositorySystem
     //
 
-    public static org.apache.maven.model.Repository fromSettingsRepository( org.apache.maven.settings.Repository settingsRepository )
+    public static org.apache.maven.model.Repository fromSettingsRepository( org.apache.maven.settings.Repository
+                                                                            settingsRepository )
     {
         org.apache.maven.model.Repository modelRepository = new org.apache.maven.model.Repository();
         modelRepository.setId( settingsRepository.getId() );
@@ -339,7 +340,8 @@ public class MavenRepositorySystem
         return modelRepository;
     }
 
-    public static org.apache.maven.model.RepositoryPolicy fromSettingsRepositoryPolicy( org.apache.maven.settings.RepositoryPolicy settingsRepositoryPolicy )
+    public static org.apache.maven.model.RepositoryPolicy fromSettingsRepositoryPolicy(
+                                                 org.apache.maven.settings.RepositoryPolicy settingsRepositoryPolicy )
     {
         org.apache.maven.model.RepositoryPolicy modelRepositoryPolicy = new org.apache.maven.model.RepositoryPolicy();
         if ( settingsRepositoryPolicy != null )
@@ -390,7 +392,8 @@ public class MavenRepositorySystem
         }
     }
 
-    public static ArtifactRepositoryPolicy buildArtifactRepositoryPolicy( org.apache.maven.model.RepositoryPolicy policy )
+    public static ArtifactRepositoryPolicy buildArtifactRepositoryPolicy( org.apache.maven.model.RepositoryPolicy
+                                                                          policy )
     {
         boolean enabled = true;
 
@@ -711,7 +714,8 @@ public class MavenRepositorySystem
         try
         {
             URL url = new URL( originalRepository.getUrl() );
-            return !( url.getHost().equals( "localhost" ) || url.getHost().equals( "127.0.0.1" ) || url.getProtocol().equals( "file" ) );
+            return !( url.getHost().equals( "localhost" ) || url.getHost().equals( "127.0.0.1" )
+                            || url.getProtocol().equals( "file" ) );
         }
         catch ( MalformedURLException e )
         {

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java b/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java
index ab9607a..38e117f 100644
--- a/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java
+++ b/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java
@@ -258,7 +258,8 @@ public class DefaultClassRealmManager
             parent = PARENT_CLASSLOADER;
         }
 
-        return createRealm( getKey( plugin, false ), RealmType.Plugin, parent, parentImports, foreignImports, artifacts );
+        return createRealm( getKey( plugin, false ), RealmType.Plugin, parent, parentImports, foreignImports,
+                            artifacts );
     }
 
     private static String getKey( Plugin plugin, boolean extension )

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/exception/DefaultExceptionHandler.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/exception/DefaultExceptionHandler.java b/maven-core/src/main/java/org/apache/maven/exception/DefaultExceptionHandler.java
index 5452fdf..6df72c8 100644
--- a/maven-core/src/main/java/org/apache/maven/exception/DefaultExceptionHandler.java
+++ b/maven-core/src/main/java/org/apache/maven/exception/DefaultExceptionHandler.java
@@ -80,7 +80,8 @@ Plugins:
 
  */
 
-//PluginNotFoundException, PluginResolutionException, PluginDescriptorParsingException, CycleDetectedInPluginGraphException;
+// PluginNotFoundException, PluginResolutionException, PluginDescriptorParsingException,
+// CycleDetectedInPluginGraphException;
 
 @Component( role = ExceptionHandler.class )
 public class DefaultExceptionHandler

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java b/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java
index 21a63a1..e5509dc 100644
--- a/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java
+++ b/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java
@@ -186,7 +186,8 @@ public class DefaultMavenExecutionRequest
         copy.setGlobalSettingsFile( original.getGlobalSettingsFile() );
         copy.setUserToolchainsFile( original.getUserToolchainsFile() );
         copy.setGlobalToolchainsFile( original.getGlobalToolchainsFile() );
-        copy.setBaseDirectory( ( original.getBaseDirectory() != null ) ? new File( original.getBaseDirectory() ) : null );
+        copy.setBaseDirectory( ( original.getBaseDirectory() != null ) ? new File( original.getBaseDirectory() )
+                                                                       : null );
         copy.setGoals( original.getGoals() );
         copy.setRecursive( original.isRecursive() );
         copy.setPom( original.getPom() );

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/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 fac1eb9..edb29ce 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
@@ -147,11 +147,11 @@ public class DefaultMavenExecutionRequestPopulator
                 }
 
                 List<Repository> pluginRepositories = rawProfile.getPluginRepositories();
-                for ( Repository pluginRepository : pluginRepositories )
+                for ( Repository pluginRepo : pluginRepositories )
                 {
                     try
                     {
-                        request.addPluginArtifactRepository( repositorySystem.buildArtifactRepository( pluginRepository ) );
+                        request.addPluginArtifactRepository( repositorySystem.buildArtifactRepository( pluginRepo ) );
                     }
                     catch ( InvalidRepositoryException e )
                     {
@@ -260,7 +260,8 @@ public class DefaultMavenExecutionRequestPopulator
         //      <mirrors>
         //        <mirror>
         //          <id>central</id>
-        //          <!-- NOTE: We need to try and use the proper host name/ip as Java generally ignores proxies for "localhost" -->
+        //          <!-- NOTE: We need to try and use the proper host name/ip as Java generally ignores proxies for
+        //                     "localhost" -->
         //          <url>http://10.0.1.34:62247/</url>
         //          <mirrorOf>central</mirrorOf>
         //        </mirror>

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/execution/MavenSession.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/execution/MavenSession.java b/maven-core/src/main/java/org/apache/maven/execution/MavenSession.java
index 5fdbd07..e4bfc80 100644
--- a/maven-core/src/main/java/org/apache/maven/execution/MavenSession.java
+++ b/maven-core/src/main/java/org/apache/maven/execution/MavenSession.java
@@ -302,8 +302,8 @@ public class MavenSession
     private final Settings settings;
     
     @Deprecated
-    public MavenSession( PlexusContainer container, RepositorySystemSession repositorySession, MavenExecutionRequest request,
-                         MavenExecutionResult result )
+    public MavenSession( PlexusContainer container, RepositorySystemSession repositorySession,
+                         MavenExecutionRequest request, MavenExecutionResult result )
     {
         this.container = container;
         this.request = request;

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/graph/DefaultGraphBuilder.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/graph/DefaultGraphBuilder.java b/maven-core/src/main/java/org/apache/maven/graph/DefaultGraphBuilder.java
index 0a602ba..c836746 100644
--- a/maven-core/src/main/java/org/apache/maven/graph/DefaultGraphBuilder.java
+++ b/maven-core/src/main/java/org/apache/maven/graph/DefaultGraphBuilder.java
@@ -118,7 +118,8 @@ public class DefaultGraphBuilder
 
                 if ( activeProjects.size() != projectDependencyGraph.getSortedProjects().size() )
                 {
-                    projectDependencyGraph = new FilteredProjectDependencyGraph( projectDependencyGraph, activeProjects );
+                    projectDependencyGraph =
+                        new FilteredProjectDependencyGraph( projectDependencyGraph, activeProjects );
                 }
             }
         }
@@ -377,11 +378,11 @@ public class DefaultGraphBuilder
         return result;
     }
 
-    // ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+    // ////////////////////////////////////////////////////////////////////////////////////////////////////////////////
     //
     // Project collection
     //
-    // ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+    // ////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 
     private List<MavenProject> getProjectsForMavenReactor( MavenSession session )
         throws ProjectBuildingException

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java b/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
index 5534e51..6f994b3 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
@@ -170,7 +170,8 @@ public class DefaultLifecycleExecutor
     public List<MavenProject> executeForkedExecutions( MojoExecution mojoExecution, MavenSession session )
         throws LifecycleExecutionException
     {
-        return mojoExecutor.executeForkedExecutions( mojoExecution, session, new ProjectIndex( session.getProjects() ) );
+        return mojoExecutor.executeForkedExecutions( mojoExecution, session,
+                                                     new ProjectIndex( session.getProjects() ) );
     }
 
 }

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/lifecycle/MojoExecutionConfigurator.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/MojoExecutionConfigurator.java b/maven-core/src/main/java/org/apache/maven/lifecycle/MojoExecutionConfigurator.java
index 9852df8..4a195ca 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/MojoExecutionConfigurator.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/MojoExecutionConfigurator.java
@@ -23,8 +23,8 @@ import org.apache.maven.plugin.MojoExecution;
 import org.apache.maven.project.MavenProject;
 
 /**
- * A MojoExecutionConfigurator is responsible for creating the configuration for  Mojo  based on configuration for a Mojo in the MavenProject
- * and the default configuration for the Mojo from the containing plugin's plugin.xml descriptor.
+ * A MojoExecutionConfigurator is responsible for creating the configuration for Mojo based on configuration for a Mojo
+ * in the MavenProject and the default configuration for the Mojo from the containing plugin's plugin.xml descriptor.
  * 
  * @provisional
  * @author Jason van Zyl

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecycleExecutionPlanCalculator.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecycleExecutionPlanCalculator.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecycleExecutionPlanCalculator.java
index 0f060dc..8cc47cc 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecycleExecutionPlanCalculator.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecycleExecutionPlanCalculator.java
@@ -168,14 +168,15 @@ public class DefaultLifecycleExecutionPlanCalculator
         {
             mojoDescriptor =
                 pluginManager.getMojoDescriptor( mojoExecution.getPlugin(), mojoExecution.getGoal(),
-                                                 project.getRemotePluginRepositories(), session.getRepositorySession() );
+                                                 project.getRemotePluginRepositories(),
+                                                 session.getRepositorySession() );
 
             mojoExecution.setMojoDescriptor( mojoDescriptor );
         }
 
         mojoExecutionConfigurator( mojoExecution ).configure( project,
                                                               mojoExecution,
-                                                              MojoExecution.Source.CLI.equals( mojoExecution.getSource() ) );
+                                                        MojoExecution.Source.CLI.equals( mojoExecution.getSource() ) );
 
         finalizeMojoConfiguration( mojoExecution );
 
@@ -204,7 +205,8 @@ public class DefaultLifecycleExecutionPlanCalculator
 
                 MojoDescriptor mojoDescriptor = mojoDescriptorCreator.getMojoDescriptor( pluginGoal, session, project );
 
-                MojoExecution mojoExecution = new MojoExecution( mojoDescriptor, executionId, MojoExecution.Source.CLI );
+                MojoExecution mojoExecution = new MojoExecution( mojoDescriptor, executionId,
+                                                                 MojoExecution.Source.CLI );
 
                 mojoExecutions.add( mojoExecution );
             }
@@ -298,7 +300,8 @@ public class DefaultLifecycleExecutionPlanCalculator
 
                 Xpp3Dom parameterDefaults = defaultConfiguration.getChild( parameter.getName() );
 
-                parameterConfiguration = Xpp3Dom.mergeXpp3Dom( parameterConfiguration, parameterDefaults, Boolean.TRUE );
+                parameterConfiguration = Xpp3Dom.mergeXpp3Dom( parameterConfiguration, parameterDefaults,
+                                                               Boolean.TRUE );
 
                 if ( parameterConfiguration != null )
                 {
@@ -369,7 +372,8 @@ public class DefaultLifecycleExecutionPlanCalculator
             }
             else
             {
-                forkedExecutions = calculateForkedGoal( mojoExecution, session, forkedProject, alreadyForkedExecutions );
+                forkedExecutions = calculateForkedGoal( mojoExecution, session, forkedProject,
+                                                        alreadyForkedExecutions );
             }
 
             mojoExecution.setForkedExecutions( BuilderCommon.getKey( forkedProject ), forkedExecutions );
@@ -389,7 +393,8 @@ public class DefaultLifecycleExecutionPlanCalculator
 
         String forkedPhase = mojoDescriptor.getExecutePhase();
 
-        Map<String, List<MojoExecution>> lifecycleMappings = calculateLifecycleMappings( session, project, forkedPhase );
+        Map<String, List<MojoExecution>> lifecycleMappings = calculateLifecycleMappings( session, project,
+                                                                                         forkedPhase );
 
         for ( List<MojoExecution> forkedExecutions : lifecycleMappings.values() )
         {

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java
index a907636..4d73528 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java
@@ -203,7 +203,8 @@ public class LifecycleDependencyResolver
              * plugins that require dependency resolution although they usually run in phases of the build where project
              * artifacts haven't been assembled yet. The prime example of this is "mvn release:prepare".
              */
-            if ( aggregating && areAllDependenciesInReactor( session.getProjects(), result.getUnresolvedDependencies() ) )
+            if ( aggregating && areAllDependenciesInReactor( session.getProjects(),
+                                                             result.getUnresolvedDependencies() ) )
             {
                 logger.warn( "The following dependencies could not be resolved at this point of the build"
                     + " but seem to be part of the reactor:" );
@@ -232,7 +233,8 @@ public class LifecycleDependencyResolver
         return artifacts;
     }
 
-    private boolean areAllDependenciesInReactor( Collection<MavenProject> projects, Collection<Dependency> dependencies )
+    private boolean areAllDependenciesInReactor( Collection<MavenProject> projects,
+                                                 Collection<Dependency> dependencies )
     {
         Set<String> projectKeys = getReactorProjectKeys( projects );
 

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleModuleBuilder.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleModuleBuilder.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleModuleBuilder.java
index f9e6e6a..343fbf9 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleModuleBuilder.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleModuleBuilder.java
@@ -120,7 +120,8 @@ public class LifecycleModuleBuilder
             projectExecutionListener.afterProjectExecutionSuccess( new ProjectExecutionEvent( session, currentProject,
                                                                                               mojoExecutions ) );
 
-            reactorContext.getResult().addBuildSummary( new BuildSuccess( currentProject, buildEndTime - buildStartTime ) );
+            reactorContext.getResult().addBuildSummary( new BuildSuccess( currentProject,
+                                                                          buildEndTime - buildStartTime ) );
 
             eventCatapult.fire( ExecutionEvent.Type.ProjectSucceeded, session, null );
         }

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleStarter.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleStarter.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleStarter.java
index 55217dc..cee8073 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleStarter.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleStarter.java
@@ -114,14 +114,16 @@ public class LifecycleStarter
             Builder builder = builders.get( builderId );
             if ( builder == null )
             {
-                throw new BuilderNotFoundException( String.format( "The builder requested using id = %s cannot be found", builderId ) );
+                throw new BuilderNotFoundException( String.format( "The builder requested using id = %s cannot be"
+                    + " found", builderId ) );
             }
 
             int degreeOfConcurrency = session.getRequest().getDegreeOfConcurrency();
             if ( degreeOfConcurrency >= 2 )
             {
                 logger.info( "" );
-                logger.info( String.format( "Using the %s implementation with a thread count of %d", builder.getClass().getSimpleName(), degreeOfConcurrency ) );
+                logger.info( String.format( "Using the %s implementation with a thread count of %d",
+                                            builder.getClass().getSimpleName(), degreeOfConcurrency ) );
             }
             builder.build( session, reactorContext, projectBuilds, taskSegments, reactorBuildStatus );
 

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/Builder.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/Builder.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/Builder.java
index 84f9431..155abf9 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/Builder.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/Builder.java
@@ -29,13 +29,11 @@ import org.apache.maven.lifecycle.internal.ReactorContext;
 import org.apache.maven.lifecycle.internal.TaskSegment;
 
 /**
- *
- * A {@link Builder} encapsulates a strategy for building a set of Maven projects. The default strategy in Maven builds the
- * the projects serially, but a {@link Builder} can employ any type of concurrency model to build the projects.
+ * A {@link Builder} encapsulates a strategy for building a set of Maven projects. The default strategy in Maven builds
+ * the the projects serially, but a {@link Builder} can employ any type of concurrency model to build the projects.
  *
  * @author jvanzyl
  * @provisional
- *
  */
 public interface Builder
 {

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/BuilderCommon.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/BuilderCommon.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/BuilderCommon.java
index 691c981..34fb323 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/BuilderCommon.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/BuilderCommon.java
@@ -188,8 +188,8 @@ public class BuilderCommon
         }
     }
 
-    // Todo: I'm really wondering where this method belongs; smells like it should be on MavenProject, but for some reason
-    // it isn't ? This localization is kind-of a code smell.
+    // Todo: I'm really wondering where this method belongs; smells like it should be on MavenProject, but for some
+    // reason it isn't ? This localization is kind-of a code smell.
 
     public static String getKey( MavenProject project )
     {

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/plugin/DefaultBuildPluginManager.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/DefaultBuildPluginManager.java b/maven-core/src/main/java/org/apache/maven/plugin/DefaultBuildPluginManager.java
index 97b69be..8145bd5 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/DefaultBuildPluginManager.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/DefaultBuildPluginManager.java
@@ -75,8 +75,10 @@ public class DefaultBuildPluginManager
      * @throws PluginResolutionException The plugin could be found but could not be resolved.
      * @throws InvalidPluginDescriptorException
      */
-    public PluginDescriptor loadPlugin( Plugin plugin, List<RemoteRepository> repositories, RepositorySystemSession session )
-        throws PluginNotFoundException, PluginResolutionException, PluginDescriptorParsingException, InvalidPluginDescriptorException
+    public PluginDescriptor loadPlugin( Plugin plugin, List<RemoteRepository> repositories,
+                                        RepositorySystemSession session )
+        throws PluginNotFoundException, PluginResolutionException, PluginDescriptorParsingException,
+        InvalidPluginDescriptorException
     {
         return mavenPluginManager.getPluginDescriptor( plugin, repositories, session );
     }

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginManager.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginManager.java b/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginManager.java
index a1314fc..80cd1e1 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginManager.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginManager.java
@@ -50,7 +50,8 @@ public interface MavenPluginManager
      * @param session The repository session to use for resolving the plugin's main artifact, must not be {@code null}.
      * @return The plugin descriptor, never {@code null}.
      */
-    PluginDescriptor getPluginDescriptor( Plugin plugin, List<RemoteRepository> repositories, RepositorySystemSession session )
+    PluginDescriptor getPluginDescriptor( Plugin plugin, List<RemoteRepository> repositories,
+                                          RepositorySystemSession session )
         throws PluginResolutionException, PluginDescriptorParsingException, InvalidPluginDescriptorException;
 
     /**

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/plugin/PluginContainerException.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/PluginContainerException.java b/maven-core/src/main/java/org/apache/maven/plugin/PluginContainerException.java
index 83009de..d35ac6c 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/PluginContainerException.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/PluginContainerException.java
@@ -42,7 +42,8 @@ public class PluginContainerException
 
     private ClassRealm pluginRealm;
 
-    public PluginContainerException( MojoDescriptor mojoDescriptor, ClassRealm pluginRealm, String message, Throwable e )
+    public PluginContainerException( MojoDescriptor mojoDescriptor, ClassRealm pluginRealm, String message,
+                                     Throwable e )
     {
         super( mojoDescriptor, message, e );
 

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/plugin/PluginExecutionException.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/PluginExecutionException.java b/maven-core/src/main/java/org/apache/maven/plugin/PluginExecutionException.java
index f0f652a..602d2cb 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/PluginExecutionException.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/PluginExecutionException.java
@@ -35,7 +35,8 @@ public class PluginExecutionException
         this.mojoExecution = mojoExecution;
     }
 
-    public PluginExecutionException( MojoExecution mojoExecution, MavenProject project, String message, Throwable cause )
+    public PluginExecutionException( MojoExecution mojoExecution, MavenProject project, String message,
+                                     Throwable cause )
     {
         super( mojoExecution.getMojoDescriptor(), project, message, cause );
         this.mojoExecution = mojoExecution;

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/plugin/PluginParameterExpressionEvaluator.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/PluginParameterExpressionEvaluator.java b/maven-core/src/main/java/org/apache/maven/plugin/PluginParameterExpressionEvaluator.java
index df47fa4..b5cdc18 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/PluginParameterExpressionEvaluator.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/PluginParameterExpressionEvaluator.java
@@ -38,20 +38,28 @@ import org.codehaus.plexus.util.introspection.ReflectionValueExtractor;
  * <tr><th>expression</th>                     <th></th>               <th>evaluation result</th></tr>
  * <tr><td><code>session</code></td>           <td></td>               <td>the actual {@link MavenSession}</td></tr>
  * <tr><td><code>session.*</code></td>         <td>(since Maven 3)</td><td></td></tr>
- * <tr><td><code>localRepository</code></td>   <td></td>               <td>{@link MavenSession#getLocalRepository()}</td></tr>
+ * <tr><td><code>localRepository</code></td>   <td></td>
+ *                                             <td>{@link MavenSession#getLocalRepository()}</td></tr>
  * <tr><td><code>reactorProjects</code></td>   <td></td>               <td>{@link MavenSession#getProjects()}</td></tr>
- * <tr><td><code>repositorySystemSession</code></td><td> (since Maven 3)</td><td>{@link MavenSession#getRepositorySession()}</td></tr>
- * <tr><td><code>project</code></td>           <td></td>               <td>{@link MavenSession#getCurrentProject()}</td></tr>
+ * <tr><td><code>repositorySystemSession</code></td><td> (since Maven 3)</td>
+ *                                             <td>{@link MavenSession#getRepositorySession()}</td></tr>
+ * <tr><td><code>project</code></td>           <td></td>
+ *                                             <td>{@link MavenSession#getCurrentProject()}</td></tr>
  * <tr><td><code>project.*</code></td>         <td></td>               <td></td></tr>
  * <tr><td><code>pom.*</code></td>             <td>(since Maven 3)</td><td>same as <code>project.*</code></td></tr>
- * <tr><td><code>executedProject</code></td>   <td></td>               <td>{@link MavenProject#getExecutionProject()}</td></tr>
+ * <tr><td><code>executedProject</code></td>   <td></td>
+ *                                             <td>{@link MavenProject#getExecutionProject()}</td></tr>
  * <tr><td><code>settings</code></td>          <td></td>               <td>{@link MavenSession#getSettings()}</td></tr>
  * <tr><td><code>settings.*</code></td>        <td></td>               <td></td></tr>
- * <tr><td><code>basedir</code></td>           <td></td>               <td>{@link MavenSession#getExecutionRootDirectory()} or <code>System.getProperty( "user.dir" )</code> if null</td></tr>
+ * <tr><td><code>basedir</code></td>           <td></td>
+ *                                             <td>{@link MavenSession#getExecutionRootDirectory()} or 
+ *                                                 <code>System.getProperty( "user.dir" )</code> if null</td></tr>
  * <tr><td><code>mojoExecution</code></td>     <td></td>               <td>the actual {@link MojoExecution}</td></tr>
  * <tr><td><code>mojo</code></td>              <td>(since Maven 3)</td><td>same as <code>mojoExecution</code></td></tr>
  * <tr><td><code>mojo.*</code></td>            <td>(since Maven 3)</td><td></td></tr>
- * <tr><td><code>plugin</code></td>            <td>(since Maven 3)</td><td>{@link MojoExecution#getMojoDescriptor()}.{@link MojoDescriptor#getPluginDescriptor() getPluginDescriptor()}</td></tr>
+ * <tr><td><code>plugin</code></td>            <td>(since Maven 3)</td>
+ *                             <td>{@link MojoExecution#getMojoDescriptor()}.{@link MojoDescriptor#getPluginDescriptor()
+ *                                 getPluginDescriptor()}</td></tr>
  * <tr><td><code>plugin.*</code></td>          <td></td>               <td></td></tr>
  * <tr><td><code>*</code></td>                 <td></td>               <td>system properties</td></tr>
  * <tr><td><code>*</code></td>                 <td></td>               <td>project properties</td></tr>

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultLegacySupport.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultLegacySupport.java b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultLegacySupport.java
index bafbcb3..f397c1e 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultLegacySupport.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultLegacySupport.java
@@ -38,7 +38,8 @@ public class DefaultLegacySupport
     implements LegacySupport
 {
 
-    private static final ThreadLocal<AtomicReference<MavenSession>> SESSION = new InheritableThreadLocal<AtomicReference<MavenSession>>();
+    private static final ThreadLocal<AtomicReference<MavenSession>> SESSION =
+        new InheritableThreadLocal<AtomicReference<MavenSession>>();
 
     public void setSession( MavenSession session )
     {

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java
index 5704276..e837fbe 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java
@@ -878,7 +878,8 @@ public class DefaultMavenPluginManager
         extensionRecord = extensionRealmCache.get( extensionKey );
         if ( extensionRecord == null )
         {
-            ClassRealm extensionRealm = classRealmManager.createExtensionRealm( plugin, toAetherArtifacts( artifacts ) );
+            ClassRealm extensionRealm = classRealmManager.createExtensionRealm( plugin,
+                                                                                toAetherArtifacts( artifacts ) );
 
             // TODO figure out how to use the same PluginDescriptor when running mojos
 

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
index 885c8ec..3bf8e60 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
@@ -154,7 +154,8 @@ public class DefaultPluginDependenciesResolver
         DependencyFilter resolutionFilter =
             new ExclusionsDependencyFilter( artifactFilterManager.getCoreArtifactExcludes() );
         resolutionFilter = AndDependencyFilter.newInstance( resolutionFilter, dependencyFilter );
-        return resolveInternal( plugin, pluginArtifact, resolutionFilter, new PlexusUtilsInjector(), repositories, session );
+        return resolveInternal( plugin, pluginArtifact, resolutionFilter, new PlexusUtilsInjector(), repositories,
+                                session );
     }
 
     private DependencyNode resolveInternal( Plugin plugin, Artifact pluginArtifact, DependencyFilter dependencyFilter,

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/plugin/version/DefaultPluginVersionRequest.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/version/DefaultPluginVersionRequest.java b/maven-core/src/main/java/org/apache/maven/plugin/version/DefaultPluginVersionRequest.java
index f88dba5..9907066 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/version/DefaultPluginVersionRequest.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/version/DefaultPluginVersionRequest.java
@@ -84,7 +84,8 @@ public class DefaultPluginVersionRequest
      * @param session The repository session to use, must not be {@code null}.
      * @param repositories The plugin repositories to query, may be {@code null}.
      */
-    public DefaultPluginVersionRequest( Plugin plugin, RepositorySystemSession session, List<RemoteRepository> repositories )
+    public DefaultPluginVersionRequest( Plugin plugin, RepositorySystemSession session,
+                                        List<RemoteRepository> repositories )
     {
         setGroupId( plugin.getGroupId() );
         setArtifactId( plugin.getArtifactId() );

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectHelper.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectHelper.java b/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectHelper.java
index 596f853..2cce9f6 100644
--- a/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectHelper.java
+++ b/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectHelper.java
@@ -40,7 +40,8 @@ public class DefaultMavenProjectHelper
     @Requirement
     private ArtifactHandlerManager artifactHandlerManager;
 
-    public void attachArtifact( MavenProject project, String artifactType, String artifactClassifier, File artifactFile )
+    public void attachArtifact( MavenProject project, String artifactType, String artifactClassifier,
+                                File artifactFile )
     {
         String type = artifactType;
 

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuilder.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuilder.java b/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuilder.java
index 871d6e5..99edc80 100644
--- a/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuilder.java
+++ b/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuilder.java
@@ -399,7 +399,8 @@ public class DefaultProjectBuilder
         Map<String, MavenProject> projectIndex = new HashMap<String, MavenProject>( 256 );
 
         boolean noErrors =
-            build( results, interimResults, projectIndex, pomFiles, new LinkedHashSet<File>(), true, recursive, config );
+            build( results, interimResults, projectIndex, pomFiles, new LinkedHashSet<File>(), true, recursive,
+                   config );
 
         populateReactorModelPool( modelPool, interimResults );
 
@@ -635,7 +636,8 @@ public class DefaultProjectBuilder
             }
             catch ( ModelBuildingException e )
             {
-                results.add( new DefaultProjectBuildingResult( e.getModelId(), interimResult.pomFile, e.getProblems() ) );
+                results.add( new DefaultProjectBuildingResult( e.getModelId(), interimResult.pomFile,
+                                                               e.getProblems() ) );
 
                 noErrors = false;
             }
@@ -826,17 +828,19 @@ public class DefaultProjectBuilder
         project.setManagedVersionMap( map );
 
         // release artifact repository
-        if ( project.getDistributionManagement() != null && project.getDistributionManagement().getRepository() != null )
+        if ( project.getDistributionManagement() != null
+                        && project.getDistributionManagement().getRepository() != null )
         {
             try
             {
                 DeploymentRepository r = project.getDistributionManagement().getRepository();
                 if ( !StringUtils.isEmpty( r.getId() ) && !StringUtils.isEmpty( r.getUrl() ) )
                 {
-                    ArtifactRepository repo =
-                        repositorySystem.buildArtifactRepository( project.getDistributionManagement().getRepository() );
-                    repositorySystem.injectProxy( projectBuildingRequest.getRepositorySession(), Arrays.asList( repo ) );
-                    repositorySystem.injectAuthentication( projectBuildingRequest.getRepositorySession(), Arrays.asList( repo ) );
+                    ArtifactRepository repo = repositorySystem.buildArtifactRepository( r );
+                    repositorySystem.injectProxy( projectBuildingRequest.getRepositorySession(),
+                                                  Arrays.asList( repo ) );
+                    repositorySystem.injectAuthentication( projectBuildingRequest.getRepositorySession(),
+                                                           Arrays.asList( repo ) );
                     project.setReleaseArtifactRepository( repo );
                 }
             }
@@ -856,10 +860,11 @@ public class DefaultProjectBuilder
                 DeploymentRepository r = project.getDistributionManagement().getSnapshotRepository();
                 if ( !StringUtils.isEmpty( r.getId() ) && !StringUtils.isEmpty( r.getUrl() ) )
                 {
-                    ArtifactRepository repo =
-                        repositorySystem.buildArtifactRepository( project.getDistributionManagement().getSnapshotRepository() );
-                    repositorySystem.injectProxy( projectBuildingRequest.getRepositorySession(), Arrays.asList( repo ) );
-                    repositorySystem.injectAuthentication( projectBuildingRequest.getRepositorySession(), Arrays.asList( repo ) );
+                    ArtifactRepository repo = repositorySystem.buildArtifactRepository( r );
+                    repositorySystem.injectProxy( projectBuildingRequest.getRepositorySession(),
+                                                  Arrays.asList( repo ) );
+                    repositorySystem.injectAuthentication( projectBuildingRequest.getRepositorySession(),
+                                                           Arrays.asList( repo ) );
                     project.setSnapshotArtifactRepository( repo );
                 }
             }

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/project/MavenProject.java b/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
index a14aaa1..8587a5c 100644
--- a/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
+++ b/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
@@ -1249,7 +1249,7 @@ public class MavenProject
 
         if ( project.getPluginArtifactRepositories() != null )
         {
-            setPluginArtifactRepositories( ( Collections.unmodifiableList( project.getPluginArtifactRepositories() ) ) );
+            setPluginArtifactRepositories( Collections.unmodifiableList( project.getPluginArtifactRepositories() ) );
         }
 
         if ( project.getActiveProfiles() != null )
@@ -1458,17 +1458,17 @@ public class MavenProject
         lifecyclePhases.add( lifecyclePhase );
     }
 
-    // --------------------------------------------------------------------------------------------------------------------
+    // ----------------------------------------------------------------------------------------------------------------
     //
     //
     // D E P R E C A T E D
     //
     //
-    // --------------------------------------------------------------------------------------------------------------------
+    // ----------------------------------------------------------------------------------------------------------------
     //
     // Everything below will be removed for Maven 4.0.0
     //
-    // --------------------------------------------------------------------------------------------------------------------
+    // ----------------------------------------------------------------------------------------------------------------
 
     private ProjectBuildingRequest projectBuilderConfiguration;
 
@@ -1531,7 +1531,8 @@ public class MavenProject
     }
 
     @Deprecated
-    public Set<Artifact> createArtifacts( ArtifactFactory artifactFactory, String inheritedScope, ArtifactFilter filter )
+    public Set<Artifact> createArtifacts( ArtifactFactory artifactFactory, String inheritedScope,
+                                          ArtifactFilter filter )
         throws InvalidDependencyVersionException
     {
         return MavenMetadataSource.createArtifacts( artifactFactory, getDependencies(), inheritedScope, filter, this );

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/project/MavenProjectHelper.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/project/MavenProjectHelper.java b/maven-core/src/main/java/org/apache/maven/project/MavenProjectHelper.java
index 406bbf2..0b54c00 100644
--- a/maven-core/src/main/java/org/apache/maven/project/MavenProjectHelper.java
+++ b/maven-core/src/main/java/org/apache/maven/project/MavenProjectHelper.java
@@ -70,6 +70,7 @@ public interface MavenProjectHelper
      * @param includes include patterns.
      * @param excludes exclude patterns.
      */
-    void addTestResource( MavenProject project, String resourceDirectory, List<String> includes, List<String> excludes );
+    void addTestResource( MavenProject project, String resourceDirectory, List<String> includes,
+                          List<String> excludes );
 
 }

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/project/ProjectModelResolver.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/project/ProjectModelResolver.java b/maven-core/src/main/java/org/apache/maven/project/ProjectModelResolver.java
index 77e7c49..3e33eb5 100644
--- a/maven-core/src/main/java/org/apache/maven/project/ProjectModelResolver.java
+++ b/maven-core/src/main/java/org/apache/maven/project/ProjectModelResolver.java
@@ -84,7 +84,8 @@ public class ProjectModelResolver
 
     public ProjectModelResolver( RepositorySystemSession session, RequestTrace trace, RepositorySystem resolver,
                                  RemoteRepositoryManager remoteRepositoryManager, List<RemoteRepository> repositories,
-                                 ProjectBuildingRequest.RepositoryMerging repositoryMerging, ReactorModelPool modelPool )
+                                 ProjectBuildingRequest.RepositoryMerging repositoryMerging,
+                                 ReactorModelPool modelPool )
     {
         this.session = session;
         this.trace = trace;

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java b/maven-core/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java
index becd880..1fb5c54 100644
--- a/maven-core/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java
+++ b/maven-core/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java
@@ -445,7 +445,7 @@ public class MavenMetadataSource
 
     public List<ArtifactVersion> retrieveAvailableVersionsFromDeploymentRepository( Artifact artifact,
                                                                                     ArtifactRepository localRepository,
-                                                                                    ArtifactRepository deploymentRepository )
+                                                                              ArtifactRepository deploymentRepository )
         throws ArtifactMetadataRetrievalException
     {
         RepositoryMetadata metadata = new ArtifactRepositoryMetadata( artifact );

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/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 8d1e516..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
@@ -80,7 +80,8 @@ public interface RepositorySystem
         throws InvalidRepositoryException;
 
     ArtifactRepository createArtifactRepository( String id, String url, ArtifactRepositoryLayout repositoryLayout,
-                                                 ArtifactRepositoryPolicy snapshots, ArtifactRepositoryPolicy releases );
+                                                 ArtifactRepositoryPolicy snapshots,
+                                                 ArtifactRepositoryPolicy releases );
 
     /**
      * Calculates the effective repositories for the given input repositories which are assumed to be already mirrored

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/rtinfo/internal/DefaultRuntimeInformation.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/rtinfo/internal/DefaultRuntimeInformation.java b/maven-core/src/main/java/org/apache/maven/rtinfo/internal/DefaultRuntimeInformation.java
index 2bb801d..6a733f9 100644
--- a/maven-core/src/main/java/org/apache/maven/rtinfo/internal/DefaultRuntimeInformation.java
+++ b/maven-core/src/main/java/org/apache/maven/rtinfo/internal/DefaultRuntimeInformation.java
@@ -82,7 +82,8 @@ public class DefaultRuntimeInformation
             }
             else
             {
-                logger.warn( "Could not locate " + resource + " on classpath, Maven runtime information not available" );
+                logger.warn( "Could not locate " + resource
+                             + " on classpath, Maven runtime information not available" );
             }
 
             String version = props.getProperty( "version", "" ).trim();

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/toolchain/DefaultToolchainManager.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/DefaultToolchainManager.java b/maven-core/src/main/java/org/apache/maven/toolchain/DefaultToolchainManager.java
index b852f1c..8093bbd 100644
--- a/maven-core/src/main/java/org/apache/maven/toolchain/DefaultToolchainManager.java
+++ b/maven-core/src/main/java/org/apache/maven/toolchain/DefaultToolchainManager.java
@@ -74,7 +74,8 @@ public class DefaultToolchainManager
         return selectToolchains( models, type, requirements );
     }
 
-    private List<Toolchain> selectToolchains( List<ToolchainModel> models, String type, Map<String, String> requirements )
+    private List<Toolchain> selectToolchains( List<ToolchainModel> models, String type,
+                                              Map<String, String> requirements )
     {
         List<Toolchain> toolchains = new ArrayList<Toolchain>();
 

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilder.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilder.java b/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilder.java
index 808e4be..5e861af 100644
--- a/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilder.java
+++ b/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilder.java
@@ -59,7 +59,7 @@ public class DefaultToolchainsBuilder
     {
         ProblemCollector problems = ProblemCollectorFactory.newInstance( null );
         
-        PersistedToolchains globalToolchains = readToolchains( request.getGlobalToolchainsSource() , request, problems );
+        PersistedToolchains globalToolchains = readToolchains( request.getGlobalToolchainsSource(), request, problems );
 
         PersistedToolchains userToolchains = readToolchains( request.getUserToolchainsSource(), request, problems );
 

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingRequest.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingRequest.java b/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingRequest.java
index 8defdcf..afefafc 100644
--- a/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingRequest.java
+++ b/maven-core/src/main/java/org/apache/maven/toolchain/building/ToolchainsBuildingRequest.java
@@ -38,8 +38,8 @@ public interface ToolchainsBuildingRequest
     Source getGlobalToolchainsSource();
 
     /**
-     * Sets the global toolchains source. If both user toolchains and a global toolchains are given, the user toolchains take
-     * precedence.
+     * Sets the global toolchains source. If both user toolchains and a global toolchains are given, the user toolchains
+     * take precedence.
      *
      * @param globalToolchainsSource The global toolchains source, may be {@code null} to disable global toolchains.
      * @return This request, never {@code null}.
@@ -54,8 +54,8 @@ public interface ToolchainsBuildingRequest
     Source getUserToolchainsSource();
 
     /**
-     * Sets the user toolchains source. If both user toolchains and a global toolchains are given, the user toolchains take
-     * precedence.
+     * Sets the user toolchains source. If both user toolchains and a global toolchains are given, the user toolchains
+     * take precedence.
      *
      * @param userToolchainsSource The user toolchains source, may be {@code null} to disable user toolchains.
      * @return This request, never {@code null}.

http://git-wip-us.apache.org/repos/asf/maven/blob/eecdc9a1/maven-core/src/main/java/org/apache/maven/toolchain/io/ToolchainsReader.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/io/ToolchainsReader.java b/maven-core/src/main/java/org/apache/maven/toolchain/io/ToolchainsReader.java
index f856f51..d5afb90 100644
--- a/maven-core/src/main/java/org/apache/maven/toolchain/io/ToolchainsReader.java
+++ b/maven-core/src/main/java/org/apache/maven/toolchain/io/ToolchainsReader.java
@@ -55,8 +55,8 @@ public interface ToolchainsReader
         throws IOException, ToolchainsParseException;
 
     /**
-     * Reads the toolchains from the specified character reader. The reader will be automatically closed before the method
-     * returns.
+     * Reads the toolchains from the specified character reader. The reader will be automatically closed before the
+     * method returns.
      *
      * @param input The reader to deserialize the toolchains from, must not be {@code null}.
      * @param options The options to use for deserialization, may be {@code null} to use the default values.


[10/50] [abbrv] maven git commit: Simplify the bootstrapping instructions to remove use of M2_HOME.

Posted by ah...@apache.org.
Simplify the bootstrapping instructions to remove use of M2_HOME.

As part of deprecating the M2_HOME environment variable (MNGSITE-223),
change the bootstrapping instructions so that it's no longer used.

Signed-off-by: Jason van Zyl <ja...@tesla.io>


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

Branch: refs/heads/slf4j-log4j2
Commit: fdcd34dd370111494f0d47e495c56f33a5054a30
Parents: 2eab892
Author: Joseph Walton <jo...@kafsemo.org>
Authored: Sat Feb 21 18:03:14 2015 +1100
Committer: Jason van Zyl <ja...@tesla.io>
Committed: Sat Feb 21 09:17:50 2015 -0500

----------------------------------------------------------------------
 README.md | 12 +++---------
 1 file changed, 3 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/fdcd34dd/README.md
----------------------------------------------------------------------
diff --git a/README.md b/README.md
index d673325..216e7d8 100644
--- a/README.md
+++ b/README.md
@@ -14,16 +14,10 @@ If you want to bootstrap Maven, you'll need:
 - Java 1.6+
 - Ant 1.8 or later
 
-First, give Ant a location into which the completed Maven distro should be installed:
+Run Ant, specifying a location into which the completed Maven distro should be installed:
 
 ```
-export M2_HOME=$HOME/apps/maven/apache-maven-3.2.x-SNAPSHOT
+ant -Dmaven.home="$HOME/apps/maven/apache-maven-3.2.x-SNAPSHOT"
 ```
 
-Then, run Ant:
-
-```
-ant
-```
-
-Once the build completes, you should have a new Maven distro ready to roll in your $M2_HOME directory!
+Once the build completes, you should have a new Maven distro ready to roll in that directory!


[35/50] [abbrv] maven git commit: [maven-release-plugin] prepare for next development iteration

Posted by ah...@apache.org.
[maven-release-plugin] prepare for next development iteration


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

Branch: refs/heads/slf4j-log4j2
Commit: eae9a88f545403af487bf79ce6fab17549be6b62
Parents: b37a7d1
Author: Jason van Zyl <ja...@tesla.io>
Authored: Wed Mar 11 14:42:17 2015 -0700
Committer: Jason van Zyl <ja...@tesla.io>
Committed: Wed Mar 11 14:42:17 2015 -0700

----------------------------------------------------------------------
 apache-maven/pom.xml              | 4 ++--
 maven-aether-provider/pom.xml     | 4 ++--
 maven-artifact/pom.xml            | 4 ++--
 maven-builder-support/pom.xml     | 4 ++--
 maven-compat/pom.xml              | 4 ++--
 maven-core/pom.xml                | 4 ++--
 maven-embedder/pom.xml            | 4 ++--
 maven-model-builder/pom.xml       | 4 ++--
 maven-model/pom.xml               | 4 ++--
 maven-plugin-api/pom.xml          | 4 ++--
 maven-repository-metadata/pom.xml | 4 ++--
 maven-settings-builder/pom.xml    | 4 ++--
 maven-settings/pom.xml            | 4 ++--
 pom.xml                           | 4 ++--
 14 files changed, 28 insertions(+), 28 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/eae9a88f/apache-maven/pom.xml
----------------------------------------------------------------------
diff --git a/apache-maven/pom.xml b/apache-maven/pom.xml
index 66ba74d..90b649b 100644
--- a/apache-maven/pom.xml
+++ b/apache-maven/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0</version>
+    <version>3.3.1-SNAPSHOT</version>
   </parent>
 
   <artifactId>apache-maven</artifactId>
@@ -37,7 +37,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.0</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/eae9a88f/maven-aether-provider/pom.xml
----------------------------------------------------------------------
diff --git a/maven-aether-provider/pom.xml b/maven-aether-provider/pom.xml
index 28b0e05..77ec510 100644
--- a/maven-aether-provider/pom.xml
+++ b/maven-aether-provider/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0</version>
+    <version>3.3.1-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-aether-provider</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.0</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/eae9a88f/maven-artifact/pom.xml
----------------------------------------------------------------------
diff --git a/maven-artifact/pom.xml b/maven-artifact/pom.xml
index 9e8381d..4c1e908 100644
--- a/maven-artifact/pom.xml
+++ b/maven-artifact/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0</version>
+    <version>3.3.1-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-artifact</artifactId>
@@ -26,7 +26,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.0</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/eae9a88f/maven-builder-support/pom.xml
----------------------------------------------------------------------
diff --git a/maven-builder-support/pom.xml b/maven-builder-support/pom.xml
index 04b1f71..f88a000 100644
--- a/maven-builder-support/pom.xml
+++ b/maven-builder-support/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0</version>
+    <version>3.3.1-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-builder-support</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.0</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/eae9a88f/maven-compat/pom.xml
----------------------------------------------------------------------
diff --git a/maven-compat/pom.xml b/maven-compat/pom.xml
index b39fac3..3b361f6 100644
--- a/maven-compat/pom.xml
+++ b/maven-compat/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0</version>
+    <version>3.3.1-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-compat</artifactId>
@@ -27,7 +27,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.0</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <properties>

http://git-wip-us.apache.org/repos/asf/maven/blob/eae9a88f/maven-core/pom.xml
----------------------------------------------------------------------
diff --git a/maven-core/pom.xml b/maven-core/pom.xml
index dd741e4..78a91d5 100644
--- a/maven-core/pom.xml
+++ b/maven-core/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0</version>
+    <version>3.3.1-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-core</artifactId>
@@ -27,7 +27,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.0</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <properties>

http://git-wip-us.apache.org/repos/asf/maven/blob/eae9a88f/maven-embedder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-embedder/pom.xml b/maven-embedder/pom.xml
index 63af597..8dbd9d1 100644
--- a/maven-embedder/pom.xml
+++ b/maven-embedder/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0</version>
+    <version>3.3.1-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-embedder</artifactId>
@@ -27,7 +27,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.0</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/eae9a88f/maven-model-builder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-model-builder/pom.xml b/maven-model-builder/pom.xml
index 5191640..ef8e423 100644
--- a/maven-model-builder/pom.xml
+++ b/maven-model-builder/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0</version>
+    <version>3.3.1-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-model-builder</artifactId>
@@ -27,7 +27,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.0</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/eae9a88f/maven-model/pom.xml
----------------------------------------------------------------------
diff --git a/maven-model/pom.xml b/maven-model/pom.xml
index 4a0bf62..1cc60e8 100644
--- a/maven-model/pom.xml
+++ b/maven-model/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0</version>
+    <version>3.3.1-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-model</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.0</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <properties>

http://git-wip-us.apache.org/repos/asf/maven/blob/eae9a88f/maven-plugin-api/pom.xml
----------------------------------------------------------------------
diff --git a/maven-plugin-api/pom.xml b/maven-plugin-api/pom.xml
index 0e5fa85..209b16f 100644
--- a/maven-plugin-api/pom.xml
+++ b/maven-plugin-api/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0</version>
+    <version>3.3.1-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-plugin-api</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.0</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/eae9a88f/maven-repository-metadata/pom.xml
----------------------------------------------------------------------
diff --git a/maven-repository-metadata/pom.xml b/maven-repository-metadata/pom.xml
index ce2b414..18d1465 100644
--- a/maven-repository-metadata/pom.xml
+++ b/maven-repository-metadata/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0</version>
+    <version>3.3.1-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-repository-metadata</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.0</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/eae9a88f/maven-settings-builder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-settings-builder/pom.xml b/maven-settings-builder/pom.xml
index 7db5b27..55f47a0 100644
--- a/maven-settings-builder/pom.xml
+++ b/maven-settings-builder/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0</version>
+    <version>3.3.1-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-settings-builder</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.0</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/eae9a88f/maven-settings/pom.xml
----------------------------------------------------------------------
diff --git a/maven-settings/pom.xml b/maven-settings/pom.xml
index d5c745e..7c2314b 100644
--- a/maven-settings/pom.xml
+++ b/maven-settings/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0</version>
+    <version>3.3.1-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-settings</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>maven-3.3.0</tag>
+    <tag>HEAD</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/eae9a88f/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index e060708..f48e75d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -26,7 +26,7 @@
   </parent>
 
   <artifactId>maven</artifactId>
-  <version>3.3.0</version>
+  <version>3.3.1-SNAPSHOT</version>
   <packaging>pom</packaging>
 
   <name>Apache Maven</name>
@@ -91,7 +91,7 @@
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
     <url>https://github.com/apache/maven/tree/${project.scm.tag}</url>
-    <tag>maven-3.3.0</tag>
+    <tag>master</tag>
   </scm>
   <issueManagement>
     <system>jira</system>


[24/50] [abbrv] maven git commit: Change version from 3.2.6-SNAPSHOT to 3.3.0-SNAPSHOT

Posted by ah...@apache.org.
Change version from 3.2.6-SNAPSHOT to 3.3.0-SNAPSHOT


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

Branch: refs/heads/slf4j-log4j2
Commit: 368516c2aa7e593dfbd4b13f19804d31b99e0ac3
Parents: cf33545
Author: Jason van Zyl <ja...@tesla.io>
Authored: Wed Mar 4 10:57:41 2015 -0800
Committer: Jason van Zyl <ja...@tesla.io>
Committed: Wed Mar 4 10:58:05 2015 -0800

----------------------------------------------------------------------
 apache-maven/pom.xml              | 2 +-
 maven-aether-provider/pom.xml     | 2 +-
 maven-artifact/pom.xml            | 2 +-
 maven-builder-support/pom.xml     | 2 +-
 maven-compat/pom.xml              | 2 +-
 maven-core/pom.xml                | 2 +-
 maven-embedder/pom.xml            | 2 +-
 maven-model-builder/pom.xml       | 2 +-
 maven-model/pom.xml               | 2 +-
 maven-plugin-api/pom.xml          | 2 +-
 maven-repository-metadata/pom.xml | 2 +-
 maven-settings-builder/pom.xml    | 2 +-
 maven-settings/pom.xml            | 2 +-
 pom.xml                           | 2 +-
 14 files changed, 14 insertions(+), 14 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/368516c2/apache-maven/pom.xml
----------------------------------------------------------------------
diff --git a/apache-maven/pom.xml b/apache-maven/pom.xml
index 26ea1b5..f6383ca 100644
--- a/apache-maven/pom.xml
+++ b/apache-maven/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.2.6-SNAPSHOT</version>
+    <version>3.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>apache-maven</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/368516c2/maven-aether-provider/pom.xml
----------------------------------------------------------------------
diff --git a/maven-aether-provider/pom.xml b/maven-aether-provider/pom.xml
index 1973613..978f246 100644
--- a/maven-aether-provider/pom.xml
+++ b/maven-aether-provider/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.2.6-SNAPSHOT</version>
+    <version>3.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-aether-provider</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/368516c2/maven-artifact/pom.xml
----------------------------------------------------------------------
diff --git a/maven-artifact/pom.xml b/maven-artifact/pom.xml
index 11fc35f..b21b254 100644
--- a/maven-artifact/pom.xml
+++ b/maven-artifact/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.2.6-SNAPSHOT</version>
+    <version>3.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-artifact</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/368516c2/maven-builder-support/pom.xml
----------------------------------------------------------------------
diff --git a/maven-builder-support/pom.xml b/maven-builder-support/pom.xml
index ebb0181..8d7ab2e 100644
--- a/maven-builder-support/pom.xml
+++ b/maven-builder-support/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.2.6-SNAPSHOT</version>
+    <version>3.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-builder-support</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/368516c2/maven-compat/pom.xml
----------------------------------------------------------------------
diff --git a/maven-compat/pom.xml b/maven-compat/pom.xml
index d87d27f..a2956fe 100644
--- a/maven-compat/pom.xml
+++ b/maven-compat/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.2.6-SNAPSHOT</version>
+    <version>3.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-compat</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/368516c2/maven-core/pom.xml
----------------------------------------------------------------------
diff --git a/maven-core/pom.xml b/maven-core/pom.xml
index 035f5ad..e69ffd3 100644
--- a/maven-core/pom.xml
+++ b/maven-core/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.2.6-SNAPSHOT</version>
+    <version>3.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-core</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/368516c2/maven-embedder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-embedder/pom.xml b/maven-embedder/pom.xml
index a0a359f..6700057 100644
--- a/maven-embedder/pom.xml
+++ b/maven-embedder/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.2.6-SNAPSHOT</version>
+    <version>3.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-embedder</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/368516c2/maven-model-builder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-model-builder/pom.xml b/maven-model-builder/pom.xml
index 186e207..03a044f 100644
--- a/maven-model-builder/pom.xml
+++ b/maven-model-builder/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.2.6-SNAPSHOT</version>
+    <version>3.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-model-builder</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/368516c2/maven-model/pom.xml
----------------------------------------------------------------------
diff --git a/maven-model/pom.xml b/maven-model/pom.xml
index 567de32..455090c 100644
--- a/maven-model/pom.xml
+++ b/maven-model/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.2.6-SNAPSHOT</version>
+    <version>3.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-model</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/368516c2/maven-plugin-api/pom.xml
----------------------------------------------------------------------
diff --git a/maven-plugin-api/pom.xml b/maven-plugin-api/pom.xml
index fb998e3..6fdd391 100644
--- a/maven-plugin-api/pom.xml
+++ b/maven-plugin-api/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.2.6-SNAPSHOT</version>
+    <version>3.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-plugin-api</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/368516c2/maven-repository-metadata/pom.xml
----------------------------------------------------------------------
diff --git a/maven-repository-metadata/pom.xml b/maven-repository-metadata/pom.xml
index 440ee52..47b2b7e 100644
--- a/maven-repository-metadata/pom.xml
+++ b/maven-repository-metadata/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.2.6-SNAPSHOT</version>
+    <version>3.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-repository-metadata</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/368516c2/maven-settings-builder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-settings-builder/pom.xml b/maven-settings-builder/pom.xml
index 2d109f4..0551173 100644
--- a/maven-settings-builder/pom.xml
+++ b/maven-settings-builder/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.2.6-SNAPSHOT</version>
+    <version>3.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-settings-builder</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/368516c2/maven-settings/pom.xml
----------------------------------------------------------------------
diff --git a/maven-settings/pom.xml b/maven-settings/pom.xml
index 23bc567..7ef95ad 100644
--- a/maven-settings/pom.xml
+++ b/maven-settings/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.2.6-SNAPSHOT</version>
+    <version>3.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-settings</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/368516c2/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 2bb83b1..0145b85 100644
--- a/pom.xml
+++ b/pom.xml
@@ -26,7 +26,7 @@
   </parent>
 
   <artifactId>maven</artifactId>
-  <version>3.2.6-SNAPSHOT</version>
+  <version>3.3.0-SNAPSHOT</version>
   <packaging>pom</packaging>
 
   <name>Apache Maven</name>


[34/50] [abbrv] maven git commit: [maven-release-plugin] prepare release maven-3.3.0

Posted by ah...@apache.org.
[maven-release-plugin] prepare release maven-3.3.0


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

Branch: refs/heads/slf4j-log4j2
Commit: b37a7d17765a2bc8dfab63b4e739e7198172fe43
Parents: d8527aa
Author: Jason van Zyl <ja...@tesla.io>
Authored: Wed Mar 11 14:42:01 2015 -0700
Committer: Jason van Zyl <ja...@tesla.io>
Committed: Wed Mar 11 14:42:01 2015 -0700

----------------------------------------------------------------------
 apache-maven/pom.xml              | 4 ++--
 maven-aether-provider/pom.xml     | 4 ++--
 maven-artifact/pom.xml            | 4 ++--
 maven-builder-support/pom.xml     | 4 ++--
 maven-compat/pom.xml              | 4 ++--
 maven-core/pom.xml                | 4 ++--
 maven-embedder/pom.xml            | 4 ++--
 maven-model-builder/pom.xml       | 4 ++--
 maven-model/pom.xml               | 4 ++--
 maven-plugin-api/pom.xml          | 4 ++--
 maven-repository-metadata/pom.xml | 4 ++--
 maven-settings-builder/pom.xml    | 4 ++--
 maven-settings/pom.xml            | 4 ++--
 pom.xml                           | 4 ++--
 14 files changed, 28 insertions(+), 28 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/b37a7d17/apache-maven/pom.xml
----------------------------------------------------------------------
diff --git a/apache-maven/pom.xml b/apache-maven/pom.xml
index f6383ca..66ba74d 100644
--- a/apache-maven/pom.xml
+++ b/apache-maven/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0-SNAPSHOT</version>
+    <version>3.3.0</version>
   </parent>
 
   <artifactId>apache-maven</artifactId>
@@ -37,7 +37,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.0</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/b37a7d17/maven-aether-provider/pom.xml
----------------------------------------------------------------------
diff --git a/maven-aether-provider/pom.xml b/maven-aether-provider/pom.xml
index 978f246..28b0e05 100644
--- a/maven-aether-provider/pom.xml
+++ b/maven-aether-provider/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0-SNAPSHOT</version>
+    <version>3.3.0</version>
   </parent>
 
   <artifactId>maven-aether-provider</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.0</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/b37a7d17/maven-artifact/pom.xml
----------------------------------------------------------------------
diff --git a/maven-artifact/pom.xml b/maven-artifact/pom.xml
index b21b254..9e8381d 100644
--- a/maven-artifact/pom.xml
+++ b/maven-artifact/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0-SNAPSHOT</version>
+    <version>3.3.0</version>
   </parent>
 
   <artifactId>maven-artifact</artifactId>
@@ -26,7 +26,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.0</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/b37a7d17/maven-builder-support/pom.xml
----------------------------------------------------------------------
diff --git a/maven-builder-support/pom.xml b/maven-builder-support/pom.xml
index 8d7ab2e..04b1f71 100644
--- a/maven-builder-support/pom.xml
+++ b/maven-builder-support/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0-SNAPSHOT</version>
+    <version>3.3.0</version>
   </parent>
 
   <artifactId>maven-builder-support</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.0</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/b37a7d17/maven-compat/pom.xml
----------------------------------------------------------------------
diff --git a/maven-compat/pom.xml b/maven-compat/pom.xml
index a2956fe..b39fac3 100644
--- a/maven-compat/pom.xml
+++ b/maven-compat/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0-SNAPSHOT</version>
+    <version>3.3.0</version>
   </parent>
 
   <artifactId>maven-compat</artifactId>
@@ -27,7 +27,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.0</tag>
   </scm>
 
   <properties>

http://git-wip-us.apache.org/repos/asf/maven/blob/b37a7d17/maven-core/pom.xml
----------------------------------------------------------------------
diff --git a/maven-core/pom.xml b/maven-core/pom.xml
index ef6ccd9..dd741e4 100644
--- a/maven-core/pom.xml
+++ b/maven-core/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0-SNAPSHOT</version>
+    <version>3.3.0</version>
   </parent>
 
   <artifactId>maven-core</artifactId>
@@ -27,7 +27,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.0</tag>
   </scm>
 
   <properties>

http://git-wip-us.apache.org/repos/asf/maven/blob/b37a7d17/maven-embedder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-embedder/pom.xml b/maven-embedder/pom.xml
index 7553982..63af597 100644
--- a/maven-embedder/pom.xml
+++ b/maven-embedder/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0-SNAPSHOT</version>
+    <version>3.3.0</version>
   </parent>
 
   <artifactId>maven-embedder</artifactId>
@@ -27,7 +27,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.0</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/b37a7d17/maven-model-builder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-model-builder/pom.xml b/maven-model-builder/pom.xml
index 03a044f..5191640 100644
--- a/maven-model-builder/pom.xml
+++ b/maven-model-builder/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0-SNAPSHOT</version>
+    <version>3.3.0</version>
   </parent>
 
   <artifactId>maven-model-builder</artifactId>
@@ -27,7 +27,7 @@
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.0</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/b37a7d17/maven-model/pom.xml
----------------------------------------------------------------------
diff --git a/maven-model/pom.xml b/maven-model/pom.xml
index 455090c..4a0bf62 100644
--- a/maven-model/pom.xml
+++ b/maven-model/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0-SNAPSHOT</version>
+    <version>3.3.0</version>
   </parent>
 
   <artifactId>maven-model</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.0</tag>
   </scm>
 
   <properties>

http://git-wip-us.apache.org/repos/asf/maven/blob/b37a7d17/maven-plugin-api/pom.xml
----------------------------------------------------------------------
diff --git a/maven-plugin-api/pom.xml b/maven-plugin-api/pom.xml
index 6fdd391..0e5fa85 100644
--- a/maven-plugin-api/pom.xml
+++ b/maven-plugin-api/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0-SNAPSHOT</version>
+    <version>3.3.0</version>
   </parent>
 
   <artifactId>maven-plugin-api</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.0</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/b37a7d17/maven-repository-metadata/pom.xml
----------------------------------------------------------------------
diff --git a/maven-repository-metadata/pom.xml b/maven-repository-metadata/pom.xml
index 47b2b7e..ce2b414 100644
--- a/maven-repository-metadata/pom.xml
+++ b/maven-repository-metadata/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0-SNAPSHOT</version>
+    <version>3.3.0</version>
   </parent>
 
   <artifactId>maven-repository-metadata</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.0</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/b37a7d17/maven-settings-builder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-settings-builder/pom.xml b/maven-settings-builder/pom.xml
index 0551173..7db5b27 100644
--- a/maven-settings-builder/pom.xml
+++ b/maven-settings-builder/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0-SNAPSHOT</version>
+    <version>3.3.0</version>
   </parent>
 
   <artifactId>maven-settings-builder</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.0</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/b37a7d17/maven-settings/pom.xml
----------------------------------------------------------------------
diff --git a/maven-settings/pom.xml b/maven-settings/pom.xml
index 7ef95ad..d5c745e 100644
--- a/maven-settings/pom.xml
+++ b/maven-settings/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.3.0-SNAPSHOT</version>
+    <version>3.3.0</version>
   </parent>
 
   <artifactId>maven-settings</artifactId>
@@ -36,7 +36,7 @@ under the License.
   <scm><!-- remove when git scm url format can accept artifact-id at the end, as automatically inherited -->
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
-    <tag>HEAD</tag>
+    <tag>maven-3.3.0</tag>
   </scm>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/b37a7d17/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 78be1f8..e060708 100644
--- a/pom.xml
+++ b/pom.xml
@@ -26,7 +26,7 @@
   </parent>
 
   <artifactId>maven</artifactId>
-  <version>3.3.0-SNAPSHOT</version>
+  <version>3.3.0</version>
   <packaging>pom</packaging>
 
   <name>Apache Maven</name>
@@ -91,7 +91,7 @@
     <connection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</connection>
     <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/maven.git</developerConnection>
     <url>https://github.com/apache/maven/tree/${project.scm.tag}</url>
-    <tag>master</tag>
+    <tag>maven-3.3.0</tag>
   </scm>
   <issueManagement>
     <system>jira</system>


[46/50] [abbrv] maven git commit: added @since info

Posted by ah...@apache.org.
added @since info

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

Branch: refs/heads/slf4j-log4j2
Commit: 4f553420c7abb510347d0143a05d5da8d40a921c
Parents: c1384a2
Author: Hervé Boutemy <hb...@apache.org>
Authored: Sun Mar 22 13:47:24 2015 +0100
Committer: Hervé Boutemy <hb...@apache.org>
Committed: Sun Mar 22 13:47:24 2015 +0100

----------------------------------------------------------------------
 .../java/org/apache/maven/AbstractMavenLifecycleParticipant.java  | 1 +
 .../org/apache/maven/lifecycle/MojoExecutionConfigurator.java     | 1 +
 .../lifecycle/internal/DefaultMojoExecutionConfigurator.java      | 3 +++
 3 files changed, 5 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/4f553420/maven-core/src/main/java/org/apache/maven/AbstractMavenLifecycleParticipant.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/AbstractMavenLifecycleParticipant.java b/maven-core/src/main/java/org/apache/maven/AbstractMavenLifecycleParticipant.java
index 84b5298..20f6c80 100644
--- a/maven-core/src/main/java/org/apache/maven/AbstractMavenLifecycleParticipant.java
+++ b/maven-core/src/main/java/org/apache/maven/AbstractMavenLifecycleParticipant.java
@@ -67,6 +67,7 @@ public abstract class AbstractMavenLifecycleParticipant
      * allocated external resources after the build. It is invoked on best-effort
      * basis and may be missed due to an Error or RuntimeException in Maven core
      * code.
+     * @since 3.2.1, MNG-5389
      */
     public void afterSessionEnd( MavenSession session )
         throws MavenExecutionException

http://git-wip-us.apache.org/repos/asf/maven/blob/4f553420/maven-core/src/main/java/org/apache/maven/lifecycle/MojoExecutionConfigurator.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/MojoExecutionConfigurator.java b/maven-core/src/main/java/org/apache/maven/lifecycle/MojoExecutionConfigurator.java
index 4a195ca..b85bac7 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/MojoExecutionConfigurator.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/MojoExecutionConfigurator.java
@@ -28,6 +28,7 @@ import org.apache.maven.project.MavenProject;
  * 
  * @provisional
  * @author Jason van Zyl
+ * @since 3.3.1, MNG-5753
  */
 public interface MojoExecutionConfigurator
 {

http://git-wip-us.apache.org/repos/asf/maven/blob/4f553420/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultMojoExecutionConfigurator.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultMojoExecutionConfigurator.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultMojoExecutionConfigurator.java
index 9947614..176ba32 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultMojoExecutionConfigurator.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultMojoExecutionConfigurator.java
@@ -30,6 +30,9 @@ import org.codehaus.plexus.component.annotations.Component;
 import org.codehaus.plexus.util.StringUtils;
 import org.codehaus.plexus.util.xml.Xpp3Dom;
 
+/**
+ * @since 3.3.1, MNG-5753
+ */
 @Component( role = MojoExecutionConfigurator.class )
 public class DefaultMojoExecutionConfigurator
     implements MojoExecutionConfigurator


[19/50] [abbrv] maven git commit: MNG-5774 Provide an extension point for alternate CLI configuration source

Posted by ah...@apache.org.
MNG-5774 Provide an extension point for alternate CLI configuration source


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

Branch: refs/heads/slf4j-log4j2
Commit: 7997634209cf2e666aa94ece24e089da179d8aa3
Parents: 5089996
Author: Jason van Zyl <ja...@tesla.io>
Authored: Sat Jan 24 17:37:00 2015 -0500
Committer: Jason van Zyl <ja...@tesla.io>
Committed: Sun Mar 1 10:22:26 2015 -0800

----------------------------------------------------------------------
 maven-core/pom.xml                              |   1 +
 .../java/org/apache/maven/DefaultMaven.java     |   2 +-
 .../maven/bridge/MavenRepositorySystem.java     |   2 +-
 .../execution/DefaultMavenExecutionRequest.java | 132 ++++++++
 .../maven/execution/MavenExecutionRequest.java  |  16 +
 .../MavenExecutionRequestPopulator.java         |   1 +
 .../java/org/apache/maven/cli/CliRequest.java   | 120 ++++++++
 .../java/org/apache/maven/cli/MavenCli.java     | 193 +++++-------
 .../configuration/ConfigurationProcessor.java   |  28 ++
 .../SettingsXmlConfigurationProcessor.java      | 308 +++++++++++++++++++
 .../java/org/apache/maven/cli/MavenCliTest.java |   1 -
 11 files changed, 679 insertions(+), 125 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/79976342/maven-core/pom.xml
----------------------------------------------------------------------
diff --git a/maven-core/pom.xml b/maven-core/pom.xml
index f6158d4..75285a0 100644
--- a/maven-core/pom.xml
+++ b/maven-core/pom.xml
@@ -40,6 +40,7 @@
       <groupId>org.apache.maven</groupId>
       <artifactId>maven-model</artifactId>
     </dependency>
+    <!-- Remove the following two deps to see how to remove Settings from the core -->
     <dependency>
       <groupId>org.apache.maven</groupId>
       <artifactId>maven-settings</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/79976342/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/DefaultMaven.java b/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
index 385ff74..20d3758 100644
--- a/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
+++ b/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
@@ -156,7 +156,7 @@ public class DefaultMaven
     //
     @SuppressWarnings( "checkstyle:methodlength" )
     private MavenExecutionResult doExecute( MavenExecutionRequest request )
-    {
+    {        
         request.setStartTime( new Date() );
 
         MavenExecutionResult result = new DefaultMavenExecutionResult();

http://git-wip-us.apache.org/repos/asf/maven/blob/79976342/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 ad93785..c0f682e 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
@@ -351,7 +351,7 @@ public class MavenRepositorySystem
         return modelRepositoryPolicy;
     }
 
-    public ArtifactRepository buildArtifactRepository( org.apache.maven.settings.Repository repo )
+    public static ArtifactRepository buildArtifactRepository( org.apache.maven.settings.Repository repo )
         throws InvalidRepositoryException
     {
         return buildArtifactRepository( fromSettingsRepository( repo ) );

http://git-wip-us.apache.org/repos/asf/maven/blob/79976342/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java b/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java
index 9daba38..21a63a1 100644
--- a/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java
+++ b/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java
@@ -28,6 +28,7 @@ import java.util.Map;
 import java.util.Properties;
 
 import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.eventspy.internal.EventSpyDispatcher;
 import org.apache.maven.model.Profile;
 import org.apache.maven.project.DefaultProjectBuildingRequest;
 import org.apache.maven.project.ProjectBuildingRequest;
@@ -40,6 +41,8 @@ import org.eclipse.aether.RepositoryCache;
 import org.eclipse.aether.repository.WorkspaceReader;
 import org.eclipse.aether.transfer.TransferListener;
 
+import com.google.common.collect.Maps;
+
 /**
  * @author Jason van Zyl
  */
@@ -53,6 +56,8 @@ public class DefaultMavenExecutionRequest
 
     private ArtifactRepository localRepository;
 
+    private EventSpyDispatcher eventSpyDispatcher;
+    
     private File localRepositoryPath;
 
     private boolean offline = false;
@@ -156,6 +161,8 @@ public class DefaultMavenExecutionRequest
 
     private boolean useLegacyLocalRepositoryManager = false;
 
+    private Map<String, Object> data;
+    
     public DefaultMavenExecutionRequest()
     {
     }
@@ -203,6 +210,7 @@ public class DefaultMavenExecutionRequest
         return copy;
     }
 
+    @Override
     public String getBaseDirectory()
     {
         if ( basedir == null )
@@ -213,16 +221,19 @@ public class DefaultMavenExecutionRequest
         return basedir.getAbsolutePath();
     }
 
+    @Override
     public ArtifactRepository getLocalRepository()
     {
         return localRepository;
     }
 
+    @Override
     public File getLocalRepositoryPath()
     {
         return localRepositoryPath;
     }
 
+    @Override
     public List<String> getGoals()
     {
         if ( goals == null )
@@ -232,6 +243,7 @@ public class DefaultMavenExecutionRequest
         return goals;
     }
 
+    @Override
     public Properties getSystemProperties()
     {
         if ( systemProperties == null )
@@ -242,6 +254,7 @@ public class DefaultMavenExecutionRequest
         return systemProperties;
     }
 
+    @Override
     public Properties getUserProperties()
     {
         if ( userProperties == null )
@@ -252,16 +265,19 @@ public class DefaultMavenExecutionRequest
         return userProperties;
     }
 
+    @Override
     public File getPom()
     {
         return pom;
     }
 
+    @Override
     public String getReactorFailureBehavior()
     {
         return reactorFailureBehavior;
     }
 
+    @Override
     public List<String> getSelectedProjects()
     {
         if ( selectedProjects == null )
@@ -272,6 +288,7 @@ public class DefaultMavenExecutionRequest
         return selectedProjects;
     }
 
+    @Override
     public List<String> getExcludedProjects()
     {
         if ( excludedProjects == null )
@@ -282,31 +299,37 @@ public class DefaultMavenExecutionRequest
         return excludedProjects;
     }
 
+    @Override
     public String getResumeFrom()
     {
         return resumeFrom;
     }
 
+    @Override
     public String getMakeBehavior()
     {
         return makeBehavior;
     }
 
+    @Override
     public Date getStartTime()
     {
         return startTime;
     }
 
+    @Override
     public boolean isShowErrors()
     {
         return showErrors;
     }
 
+    @Override
     public boolean isInteractiveMode()
     {
         return interactiveMode;
     }
 
+    @Override
     public MavenExecutionRequest setActiveProfiles( List<String> activeProfiles )
     {
         if ( activeProfiles != null )
@@ -321,6 +344,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setInactiveProfiles( List<String> inactiveProfiles )
     {
         if ( inactiveProfiles != null )
@@ -335,6 +359,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setRemoteRepositories( List<ArtifactRepository> remoteRepositories )
     {
         if ( remoteRepositories != null )
@@ -349,6 +374,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setPluginArtifactRepositories( List<ArtifactRepository> pluginArtifactRepositories )
     {
         if ( pluginArtifactRepositories != null )
@@ -368,6 +394,7 @@ public class DefaultMavenExecutionRequest
         this.projectBuildingRequest = projectBuildingConfiguration;
     }
 
+    @Override
     public List<String> getActiveProfiles()
     {
         if ( activeProfiles == null )
@@ -377,6 +404,7 @@ public class DefaultMavenExecutionRequest
         return activeProfiles;
     }
 
+    @Override
     public List<String> getInactiveProfiles()
     {
         if ( inactiveProfiles == null )
@@ -386,36 +414,43 @@ public class DefaultMavenExecutionRequest
         return inactiveProfiles;
     }
 
+    @Override
     public TransferListener getTransferListener()
     {
         return transferListener;
     }
 
+    @Override
     public int getLoggingLevel()
     {
         return loggingLevel;
     }
 
+    @Override
     public boolean isOffline()
     {
         return offline;
     }
 
+    @Override
     public boolean isUpdateSnapshots()
     {
         return updateSnapshots;
     }
 
+    @Override
     public boolean isNoSnapshotUpdates()
     {
         return noSnapshotUpdates;
     }
 
+    @Override
     public String getGlobalChecksumPolicy()
     {
         return globalChecksumPolicy;
     }
 
+    @Override
     public boolean isRecursive()
     {
         return recursive;
@@ -425,6 +460,7 @@ public class DefaultMavenExecutionRequest
     //
     // ----------------------------------------------------------------------
 
+    @Override
     public MavenExecutionRequest setBaseDirectory( File basedir )
     {
         this.basedir = basedir;
@@ -432,6 +468,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setStartTime( Date startTime )
     {
         this.startTime = startTime;
@@ -439,6 +476,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setShowErrors( boolean showErrors )
     {
         this.showErrors = showErrors;
@@ -446,6 +484,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setGoals( List<String> goals )
     {
         if ( goals != null )
@@ -460,6 +499,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setLocalRepository( ArtifactRepository localRepository )
     {
         this.localRepository = localRepository;
@@ -472,6 +512,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setLocalRepositoryPath( File localRepository )
     {
         localRepositoryPath = localRepository;
@@ -479,6 +520,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setLocalRepositoryPath( String localRepository )
     {
         localRepositoryPath = ( localRepository != null ) ? new File( localRepository ) : null;
@@ -486,6 +528,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setSystemProperties( Properties properties )
     {
         if ( properties != null )
@@ -501,6 +544,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setUserProperties( Properties userProperties )
     {
         if ( userProperties != null )
@@ -516,6 +560,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setReactorFailureBehavior( String failureBehavior )
     {
         reactorFailureBehavior = failureBehavior;
@@ -523,6 +568,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setSelectedProjects( List<String> selectedProjects )
     {
         if ( selectedProjects != null )
@@ -537,6 +583,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setExcludedProjects( List<String> excludedProjects )
     {
         if ( excludedProjects != null )
@@ -551,6 +598,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setResumeFrom( String project )
     {
         this.resumeFrom = project;
@@ -558,6 +606,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setMakeBehavior( String makeBehavior )
     {
         this.makeBehavior = makeBehavior;
@@ -565,6 +614,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest addActiveProfile( String profile )
     {
         if ( !getActiveProfiles().contains( profile ) )
@@ -575,6 +625,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest addInactiveProfile( String profile )
     {
         if ( !getInactiveProfiles().contains( profile ) )
@@ -585,6 +636,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest addActiveProfiles( List<String> profiles )
     {
         for ( String profile : profiles )
@@ -595,6 +647,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest addInactiveProfiles( List<String> profiles )
     {
         for ( String profile : profiles )
@@ -618,6 +671,7 @@ public class DefaultMavenExecutionRequest
     }
 
     /** @deprecated use {@link #setPom(File)} */
+    @Deprecated
     public MavenExecutionRequest setPomFile( String pomFilename )
     {
         if ( pomFilename != null )
@@ -628,6 +682,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setPom( File pom )
     {
         this.pom = pom;
@@ -635,6 +690,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setInteractiveMode( boolean interactive )
     {
         interactiveMode = interactive;
@@ -642,6 +698,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setTransferListener( TransferListener transferListener )
     {
         this.transferListener = transferListener;
@@ -649,6 +706,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setLoggingLevel( int loggingLevel )
     {
         this.loggingLevel = loggingLevel;
@@ -656,6 +714,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setOffline( boolean offline )
     {
         this.offline = offline;
@@ -663,6 +722,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setUpdateSnapshots( boolean updateSnapshots )
     {
         this.updateSnapshots = updateSnapshots;
@@ -670,6 +730,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setNoSnapshotUpdates( boolean noSnapshotUpdates )
     {
         this.noSnapshotUpdates = noSnapshotUpdates;
@@ -677,6 +738,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setGlobalChecksumPolicy( String globalChecksumPolicy )
     {
         this.globalChecksumPolicy = globalChecksumPolicy;
@@ -688,6 +750,7 @@ public class DefaultMavenExecutionRequest
     // Settings equivalents
     // ----------------------------------------------------------------------------
 
+    @Override
     public List<Proxy> getProxies()
     {
         if ( proxies == null )
@@ -697,6 +760,7 @@ public class DefaultMavenExecutionRequest
         return proxies;
     }
 
+    @Override
     public MavenExecutionRequest setProxies( List<Proxy> proxies )
     {
         if ( proxies != null )
@@ -711,6 +775,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest addProxy( Proxy proxy )
     {
         if ( proxy == null )
@@ -731,6 +796,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public List<Server> getServers()
     {
         if ( servers == null )
@@ -740,6 +806,7 @@ public class DefaultMavenExecutionRequest
         return servers;
     }
 
+    @Override
     public MavenExecutionRequest setServers( List<Server> servers )
     {
         if ( servers != null )
@@ -754,6 +821,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest addServer( Server server )
     {
         if ( server == null )
@@ -774,6 +842,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public List<Mirror> getMirrors()
     {
         if ( mirrors == null )
@@ -783,6 +852,7 @@ public class DefaultMavenExecutionRequest
         return mirrors;
     }
 
+    @Override
     public MavenExecutionRequest setMirrors( List<Mirror> mirrors )
     {
         if ( mirrors != null )
@@ -797,6 +867,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest addMirror( Mirror mirror )
     {
         if ( mirror == null )
@@ -817,6 +888,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public List<Profile> getProfiles()
     {
         if ( profiles == null )
@@ -826,6 +898,7 @@ public class DefaultMavenExecutionRequest
         return profiles;
     }
 
+    @Override
     public MavenExecutionRequest setProfiles( List<Profile> profiles )
     {
         if ( profiles != null )
@@ -840,6 +913,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public List<String> getPluginGroups()
     {
         if ( pluginGroups == null )
@@ -850,6 +924,7 @@ public class DefaultMavenExecutionRequest
         return pluginGroups;
     }
 
+    @Override
     public MavenExecutionRequest setPluginGroups( List<String> pluginGroups )
     {
         if ( pluginGroups != null )
@@ -864,6 +939,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest addPluginGroup( String pluginGroup )
     {
         if ( !getPluginGroups().contains( pluginGroup ) )
@@ -874,6 +950,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest addPluginGroups( List<String> pluginGroups )
     {
         for ( String pluginGroup : pluginGroups )
@@ -884,6 +961,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setRecursive( boolean recursive )
     {
         this.recursive = recursive;
@@ -894,11 +972,13 @@ public class DefaultMavenExecutionRequest
     // calculated from request attributes.
     private ProjectBuildingRequest projectBuildingRequest;
 
+    @Override
     public boolean isProjectPresent()
     {
         return isProjectPresent;
     }
 
+    @Override
     public MavenExecutionRequest setProjectPresent( boolean projectPresent )
     {
         isProjectPresent = projectPresent;
@@ -908,11 +988,13 @@ public class DefaultMavenExecutionRequest
 
     // Settings files
 
+    @Override
     public File getUserSettingsFile()
     {
         return userSettingsFile;
     }
 
+    @Override
     public MavenExecutionRequest setUserSettingsFile( File userSettingsFile )
     {
         this.userSettingsFile = userSettingsFile;
@@ -920,11 +1002,13 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public File getGlobalSettingsFile()
     {
         return globalSettingsFile;
     }
 
+    @Override
     public MavenExecutionRequest setGlobalSettingsFile( File globalSettingsFile )
     {
         this.globalSettingsFile = globalSettingsFile;
@@ -932,11 +1016,13 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public File getUserToolchainsFile()
     {
         return userToolchainsFile;
     }
 
+    @Override
     public MavenExecutionRequest setUserToolchainsFile( File userToolchainsFile )
     {
         this.userToolchainsFile = userToolchainsFile;
@@ -957,6 +1043,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public MavenExecutionRequest addRemoteRepository( ArtifactRepository repository )
     {
         for ( ArtifactRepository repo : getRemoteRepositories() )
@@ -972,6 +1059,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public List<ArtifactRepository> getRemoteRepositories()
     {
         if ( remoteRepositories == null )
@@ -981,6 +1069,7 @@ public class DefaultMavenExecutionRequest
         return remoteRepositories;
     }
 
+    @Override
     public MavenExecutionRequest addPluginArtifactRepository( ArtifactRepository repository )
     {
         for ( ArtifactRepository repo : getPluginArtifactRepositories() )
@@ -996,6 +1085,7 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public List<ArtifactRepository> getPluginArtifactRepositories()
     {
         if ( pluginArtifactRepositories == null )
@@ -1006,6 +1096,7 @@ public class DefaultMavenExecutionRequest
     }
 
     // TODO: this does not belong here.
+    @Override
     public ProjectBuildingRequest getProjectBuildingRequest()
     {
         if ( projectBuildingRequest == null )
@@ -1026,6 +1117,7 @@ public class DefaultMavenExecutionRequest
         return projectBuildingRequest;
     }
 
+    @Override
     public MavenExecutionRequest addProfile( Profile profile )
     {
         if ( profile == null )
@@ -1046,11 +1138,13 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public RepositoryCache getRepositoryCache()
     {
         return repositoryCache;
     }
 
+    @Override
     public MavenExecutionRequest setRepositoryCache( RepositoryCache repositoryCache )
     {
         this.repositoryCache = repositoryCache;
@@ -1058,11 +1152,13 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public ExecutionListener getExecutionListener()
     {
         return executionListener;
     }
 
+    @Override
     public MavenExecutionRequest setExecutionListener( ExecutionListener executionListener )
     {
         this.executionListener = executionListener;
@@ -1070,66 +1166,78 @@ public class DefaultMavenExecutionRequest
         return this;
     }
 
+    @Override
     public void setDegreeOfConcurrency( final int degreeOfConcurrency )
     {
         this.degreeOfConcurrency = degreeOfConcurrency;
     }
 
+    @Override
     public int getDegreeOfConcurrency()
     {
         return degreeOfConcurrency;
     }
 
+    @Override
     public WorkspaceReader getWorkspaceReader()
     {
         return workspaceReader;
     }
 
+    @Override
     public MavenExecutionRequest setWorkspaceReader( WorkspaceReader workspaceReader )
     {
         this.workspaceReader = workspaceReader;
         return this;
     }
 
+    @Override
     public boolean isCacheTransferError()
     {
         return cacheTransferError;
     }
 
+    @Override
     public MavenExecutionRequest setCacheTransferError( boolean cacheTransferError )
     {
         this.cacheTransferError = cacheTransferError;
         return this;
     }
 
+    @Override
     public boolean isCacheNotFound()
     {
         return cacheNotFound;
     }
 
+    @Override
     public MavenExecutionRequest setCacheNotFound( boolean cacheNotFound )
     {
         this.cacheNotFound = cacheNotFound;
         return this;
     }
 
+    @Override
     public boolean isUseLegacyLocalRepository()
     {
         return this.useLegacyLocalRepositoryManager;
     }
 
+    @Override
     public MavenExecutionRequest setUseLegacyLocalRepository( boolean useLegacyLocalRepositoryManager )
     {
         this.useLegacyLocalRepositoryManager = useLegacyLocalRepositoryManager;
         return this;
     }
 
+    @Override
     public MavenExecutionRequest setBuilderId( String builderId )
     {
         this.builderId = builderId;
         return this;
     }
 
+    @Override
     public String getBuilderId()
     {
         return builderId;
@@ -1163,4 +1271,28 @@ public class DefaultMavenExecutionRequest
     {
         return multiModuleProjectDirectory;
     }
+        
+    @Override
+    public MavenExecutionRequest setEventSpyDispatcher( EventSpyDispatcher eventSpyDispatcher )
+    {
+        this.eventSpyDispatcher = eventSpyDispatcher;
+        return this;
+    }
+
+    @Override
+    public EventSpyDispatcher getEventSpyDispatcher()
+    {
+        return eventSpyDispatcher;
+    }
+    
+    @Override
+    public Map<String, Object> getData()
+    {
+        if ( data == null )
+        {
+            data = Maps.newHashMap();
+        }
+
+        return data;
+    }
 }

http://git-wip-us.apache.org/repos/asf/maven/blob/79976342/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java b/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java
index bb4a49a..b88f728 100644
--- a/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java
+++ b/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java
@@ -27,6 +27,7 @@ import java.util.Properties;
 
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
+import org.apache.maven.eventspy.internal.EventSpyDispatcher;
 import org.apache.maven.model.Profile;
 import org.apache.maven.project.ProjectBuildingRequest;
 //
@@ -424,4 +425,19 @@ public interface MavenExecutionRequest
      * @since 3.2.6
      */
     File getMultiModuleProjectDirectory();
+
+    /**
+     * @since 3.2.6
+     */    
+    MavenExecutionRequest setEventSpyDispatcher( EventSpyDispatcher eventSpyDispatcher );
+    
+    /**
+     * @since 3.2.6
+     */
+    EventSpyDispatcher getEventSpyDispatcher();
+
+    /**
+     * @since 3.2.6
+     */
+    Map<String, Object> getData();
 }

http://git-wip-us.apache.org/repos/asf/maven/blob/79976342/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequestPopulator.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequestPopulator.java b/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequestPopulator.java
index 8eb805c..677e8c2 100644
--- a/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequestPopulator.java
+++ b/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequestPopulator.java
@@ -40,6 +40,7 @@ public interface MavenExecutionRequestPopulator
      * @return The populated execution request, never {@code null}.
      * @throws MavenExecutionRequestPopulationException If the execution request could not be populated.
      */
+    @Deprecated
     MavenExecutionRequest populateFromSettings( MavenExecutionRequest request, Settings settings )
         throws MavenExecutionRequestPopulationException;
 

http://git-wip-us.apache.org/repos/asf/maven/blob/79976342/maven-embedder/src/main/java/org/apache/maven/cli/CliRequest.java
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/CliRequest.java b/maven-embedder/src/main/java/org/apache/maven/cli/CliRequest.java
new file mode 100644
index 0000000..4656dd3
--- /dev/null
+++ b/maven-embedder/src/main/java/org/apache/maven/cli/CliRequest.java
@@ -0,0 +1,120 @@
+package org.apache.maven.cli;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.io.File;
+import java.util.Properties;
+
+import org.apache.commons.cli.CommandLine;
+import org.apache.maven.execution.DefaultMavenExecutionRequest;
+import org.apache.maven.execution.MavenExecutionRequest;
+import org.codehaus.plexus.classworlds.ClassWorld;
+
+public class CliRequest
+{
+    String[] args;
+
+    CommandLine commandLine;
+
+    ClassWorld classWorld;
+
+    String workingDirectory;
+
+    File multiModuleProjectDirectory;
+
+    boolean debug;
+
+    boolean quiet;
+
+    boolean showErrors = true;
+
+    Properties userProperties = new Properties();
+
+    Properties systemProperties = new Properties();
+
+    MavenExecutionRequest request;
+
+    CliRequest( String[] args, ClassWorld classWorld )
+    {
+        this.args = args;
+        this.classWorld = classWorld;
+        this.request = new DefaultMavenExecutionRequest();
+    }
+
+    public String[] getArgs()
+    {
+        return args;
+    }
+
+    public CommandLine getCommandLine()
+    {
+        return commandLine;
+    }
+
+    public ClassWorld getClassWorld()
+    {
+        return classWorld;
+    }
+
+    public String getWorkingDirectory()
+    {
+        return workingDirectory;
+    }
+
+    public File getMultiModuleProjectDirectory()
+    {
+        return multiModuleProjectDirectory;
+    }
+
+    public boolean isDebug()
+    {
+        return debug;
+    }
+
+    public boolean isQuiet()
+    {
+        return quiet;
+    }
+
+    public boolean isShowErrors()
+    {
+        return showErrors;
+    }
+
+    public Properties getUserProperties()
+    {
+        return userProperties;
+    }
+
+    public Properties getSystemProperties()
+    {
+        return systemProperties;
+    }
+
+    public MavenExecutionRequest getRequest()
+    {
+        return request;
+    }
+
+    public void setUserProperties( Properties properties ) 
+    {
+        this.userProperties.putAll( properties );      
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/maven/blob/79976342/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java b/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
index 4e7e072..ced883c 100644
--- a/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
+++ b/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
@@ -35,6 +35,7 @@ import java.util.HashSet;
 import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.Map.Entry;
 import java.util.Properties;
 import java.util.Set;
 import java.util.StringTokenizer;
@@ -48,6 +49,8 @@ import org.apache.maven.Maven;
 import org.apache.maven.building.FileSource;
 import org.apache.maven.building.Problem;
 import org.apache.maven.building.Source;
+import org.apache.maven.cli.configuration.ConfigurationProcessor;
+import org.apache.maven.cli.configuration.SettingsXmlConfigurationProcessor;
 import org.apache.maven.cli.event.DefaultEventSpyContext;
 import org.apache.maven.cli.event.ExecutionEventLogger;
 import org.apache.maven.cli.internal.BootstrapCoreExtensionManager;
@@ -77,11 +80,6 @@ import org.apache.maven.model.building.ModelProcessor;
 import org.apache.maven.project.MavenProject;
 import org.apache.maven.properties.internal.EnvironmentUtils;
 import org.apache.maven.properties.internal.SystemProperties;
-import org.apache.maven.settings.building.DefaultSettingsBuildingRequest;
-import org.apache.maven.settings.building.SettingsBuilder;
-import org.apache.maven.settings.building.SettingsBuildingRequest;
-import org.apache.maven.settings.building.SettingsBuildingResult;
-import org.apache.maven.settings.building.SettingsProblem;
 import org.apache.maven.toolchain.building.DefaultToolchainsBuildingRequest;
 import org.apache.maven.toolchain.building.ToolchainsBuilder;
 import org.apache.maven.toolchain.building.ToolchainsBuildingResult;
@@ -132,11 +130,6 @@ public class MavenCli
     @SuppressWarnings( "checkstyle:constantname" )
     public static final File userMavenConfigurationHome = new File( userHome, ".m2" );
 
-    public static final File DEFAULT_USER_SETTINGS_FILE = new File( userMavenConfigurationHome, "settings.xml" );
-
-    public static final File DEFAULT_GLOBAL_SETTINGS_FILE =
-        new File( System.getProperty( "maven.home", System.getProperty( "user.dir", "" ) ), "conf/settings.xml" );
-
     public static final File DEFAULT_USER_TOOLCHAINS_FILE = new File( userMavenConfigurationHome, "toolchains.xml" );
 
     public static final File DEFAULT_GLOBAL_TOOLCHAINS_FILE = 
@@ -162,12 +155,12 @@ public class MavenCli
 
     private MavenExecutionRequestPopulator executionRequestPopulator;
 
-    private SettingsBuilder settingsBuilder;
-
     private ToolchainsBuilder toolchainsBuilder;
 
     private DefaultSecDispatcher dispatcher;
 
+    private Map<String, ConfigurationProcessor> configurationProcessors;
+    
     public MavenCli()
     {
         this( null );
@@ -274,7 +267,7 @@ public class MavenCli
             properties( cliRequest );
             localContainer = container( cliRequest );
             commands( cliRequest );
-            settings( cliRequest );
+            configure( cliRequest );
             toolchains( cliRequest );
             populateRequest( cliRequest );
             encryption( cliRequest );
@@ -581,8 +574,8 @@ public class MavenCli
 
         modelProcessor = createModelProcessor( container );
 
-        settingsBuilder = container.lookup( SettingsBuilder.class );
-
+        configurationProcessors = container.lookupMap( ConfigurationProcessor.class );
+        
         toolchainsBuilder = container.lookup( ToolchainsBuilder.class );
 
         dispatcher = (DefaultSecDispatcher) container.lookup( SecDispatcher.class, "maven" );
@@ -639,20 +632,24 @@ public class MavenCli
                 Thread.currentThread().setContextClassLoader( container.getContainerRealm() );
 
                 executionRequestPopulator = container.lookup( MavenExecutionRequestPopulator.class );
-                settingsBuilder = container.lookup( SettingsBuilder.class );
-
+                
+                configurationProcessors = container.lookupMap( ConfigurationProcessor.class );
+                
+                configure( cliRequest );
+                
                 MavenExecutionRequest request = DefaultMavenExecutionRequest.copy( cliRequest.request );
-                settings( cliRequest, request );
+
                 request = populateRequest( cliRequest, request );
+                
                 request = executionRequestPopulator.populateDefaults( request );
 
                 BootstrapCoreExtensionManager resolver = container.lookup( BootstrapCoreExtensionManager.class );
+                
                 return resolver.loadCoreExtensions( request, providedArtifacts, extensions );
             }
             finally
             {
                 executionRequestPopulator = null;
-                settingsBuilder = null;
                 container.dispose();
             }
         }
@@ -979,93 +976,69 @@ public class MavenCli
     }
 
     @SuppressWarnings( "checkstyle:methodlength" )
-    private void settings( CliRequest cliRequest )
+    private void configure( CliRequest cliRequest )
         throws Exception
     {
-        settings( cliRequest, cliRequest.request );
-    }
-
-    private void settings( CliRequest cliRequest, MavenExecutionRequest request )
-        throws Exception
-    {
-        File userSettingsFile;
-
-        if ( cliRequest.commandLine.hasOption( CLIManager.ALTERNATE_USER_SETTINGS ) )
-        {
-            userSettingsFile = new File( cliRequest.commandLine.getOptionValue( CLIManager.ALTERNATE_USER_SETTINGS ) );
-            userSettingsFile = resolveFile( userSettingsFile, cliRequest.workingDirectory );
-
-            if ( !userSettingsFile.isFile() )
-            {
-                throw new FileNotFoundException( "The specified user settings file does not exist: "
-                    + userSettingsFile );
-            }
-        }
-        else
+        //
+        // This is not ideal but there are events specifically for configuration from the CLI which I don't
+        // believe are really valid but there are ITs which assert the right events are published so this
+        // needs to be supported so the EventSpyDispatcher needs to be put in the CliRequest so that
+        // it can be accessed by configuration processors.
+        //
+        cliRequest.request.setEventSpyDispatcher( eventSpyDispatcher );
+        
+        //
+        // We expect at most 2 implementations to be available. The SettingsXmlConfigurationProcessor implementation
+        // is always available in the core and likely always will be, but we may have another ConfigurationProcessor
+        // present supplied by the user. The rule is that we only allow the execution of one ConfigurationProcessor.
+        // If there is more than one then we execute the one supplied by the user, otherwise we execute the
+        // the default SettingsXmlConfigurationProcessor.
+        // 
+        int userSuppliedConfigurationProcessorCount = configurationProcessors.size() - 1;
+        
+        if ( userSuppliedConfigurationProcessorCount == 0 )
         {
-            userSettingsFile = DEFAULT_USER_SETTINGS_FILE;
-        }
-
-        File globalSettingsFile;
-
-        if ( cliRequest.commandLine.hasOption( CLIManager.ALTERNATE_GLOBAL_SETTINGS ) )
+            //
+            // Our settings.xml source is historically how we have configured Maven from the CLI so we are going to 
+            // have to honour its existence forever. So let's run it.
+            //
+            configurationProcessors.get( SettingsXmlConfigurationProcessor.HINT ).process( cliRequest );            
+        }        
+        else if ( userSuppliedConfigurationProcessorCount == 1 )
         {
-            globalSettingsFile =
-                new File( cliRequest.commandLine.getOptionValue( CLIManager.ALTERNATE_GLOBAL_SETTINGS ) );
-            globalSettingsFile = resolveFile( globalSettingsFile, cliRequest.workingDirectory );
-
-            if ( !globalSettingsFile.isFile() )
+            //
+            // Run the user supplied ConfigurationProcessor
+            //
+            for ( Entry<String, ConfigurationProcessor> entry : configurationProcessors.entrySet() )
             {
-                throw new FileNotFoundException( "The specified global settings file does not exist: "
-                    + globalSettingsFile );
-            }
-        }
-        else
-        {
-            globalSettingsFile = DEFAULT_GLOBAL_SETTINGS_FILE;
-        }
-
-        request.setGlobalSettingsFile( globalSettingsFile );
-        request.setUserSettingsFile( userSettingsFile );
-
-        SettingsBuildingRequest settingsRequest = new DefaultSettingsBuildingRequest();
-        settingsRequest.setGlobalSettingsFile( globalSettingsFile );
-        settingsRequest.setUserSettingsFile( userSettingsFile );
-        settingsRequest.setSystemProperties( cliRequest.systemProperties );
-        settingsRequest.setUserProperties( cliRequest.userProperties );
-
-        if ( eventSpyDispatcher != null )
-        {
-            eventSpyDispatcher.onEvent( settingsRequest );
-        }
-
-        slf4jLogger.debug( "Reading global settings from "
-            + getLocation( settingsRequest.getGlobalSettingsSource(),
-                                   settingsRequest.getGlobalSettingsFile() ) );
-        slf4jLogger.debug( "Reading user settings from "
-            + getLocation( settingsRequest.getUserSettingsSource(), settingsRequest.getUserSettingsFile() ) );
-
-        SettingsBuildingResult settingsResult = settingsBuilder.build( settingsRequest );
-
-        if ( eventSpyDispatcher != null )
-        {
-            eventSpyDispatcher.onEvent( settingsResult );
+                String hint = entry.getKey();
+                if ( !hint.equals( SettingsXmlConfigurationProcessor.HINT ) )
+                {
+                    ConfigurationProcessor configurationProcessor = entry.getValue();
+                    configurationProcessor.process( cliRequest );
+                }
+            }            
         }
-
-        executionRequestPopulator.populateFromSettings( request, settingsResult.getEffectiveSettings() );
-
-        if ( !settingsResult.getProblems().isEmpty() && slf4jLogger.isWarnEnabled() )
+        else if ( userSuppliedConfigurationProcessorCount > 1 )
         {
-            slf4jLogger.warn( "" );
-            slf4jLogger.warn( "Some problems were encountered while building the effective settings" );
-
-            for ( SettingsProblem problem : settingsResult.getProblems() )
+            //
+            // There are too many ConfigurationProcessors so we don't know which one to run so report the error.
+            //
+            StringBuffer sb = new StringBuffer( 
+                String.format( "\nThere can only be one user supplied ConfigurationProcessor, there are %s:\n\n", 
+                               userSuppliedConfigurationProcessorCount ) );
+            for ( Entry<String, ConfigurationProcessor> entry : configurationProcessors.entrySet() )
             {
-                slf4jLogger.warn( problem.getMessage() + " @ " + problem.getLocation() );
+                String hint = entry.getKey();
+                if ( !hint.equals( SettingsXmlConfigurationProcessor.HINT ) )
+                {
+                    ConfigurationProcessor configurationProcessor = entry.getValue();
+                    sb.append( String.format( "%s\n", configurationProcessor.getClass().getName() ) );
+                }
             }
-
-            slf4jLogger.warn( "" );
-        }
+            sb.append( String.format( "\n" ) );
+            throw new Exception( sb.toString() );
+        }                
     }
     
     @SuppressWarnings( "checkstyle:methodlength" )
@@ -1346,8 +1319,7 @@ public class MavenCli
             .setUpdateSnapshots( updateSnapshots ) // default: false
             .setNoSnapshotUpdates( noSnapshotUpdates ) // default: false
             .setGlobalChecksumPolicy( globalChecksumPolicy ) // default: warn
-            .setMultiModuleProjectDirectory( cliRequest.multiModuleProjectDirectory )
-            ;
+            .setMultiModuleProjectDirectory( cliRequest.multiModuleProjectDirectory );
 
         if ( alternatePomFile != null )
         {
@@ -1589,28 +1561,6 @@ public class MavenCli
         System.setProperty( name, value );
     }
 
-    static class CliRequest
-    {
-        String[] args;
-        CommandLine commandLine;
-        ClassWorld classWorld;
-        String workingDirectory;
-        File multiModuleProjectDirectory;
-        boolean debug;
-        boolean quiet;
-        boolean showErrors = true;
-        Properties userProperties = new Properties();
-        Properties systemProperties = new Properties();
-        MavenExecutionRequest request;
-
-        CliRequest( String[] args, ClassWorld classWorld )
-        {
-            this.args = args;
-            this.classWorld = classWorld;
-            this.request = new DefaultMavenExecutionRequest();
-        }
-    }
-
     static class ExitException
         extends Exception
     {
@@ -1621,7 +1571,6 @@ public class MavenCli
         {
             this.exitCode = exitCode;
         }
-
     }
 
     //

http://git-wip-us.apache.org/repos/asf/maven/blob/79976342/maven-embedder/src/main/java/org/apache/maven/cli/configuration/ConfigurationProcessor.java
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/configuration/ConfigurationProcessor.java b/maven-embedder/src/main/java/org/apache/maven/cli/configuration/ConfigurationProcessor.java
new file mode 100644
index 0000000..75fb9b9
--- /dev/null
+++ b/maven-embedder/src/main/java/org/apache/maven/cli/configuration/ConfigurationProcessor.java
@@ -0,0 +1,28 @@
+package org.apache.maven.cli.configuration;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.maven.cli.CliRequest;
+
+public interface ConfigurationProcessor
+{
+    void process( CliRequest request )
+        throws Exception;
+}

http://git-wip-us.apache.org/repos/asf/maven/blob/79976342/maven-embedder/src/main/java/org/apache/maven/cli/configuration/SettingsXmlConfigurationProcessor.java
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/configuration/SettingsXmlConfigurationProcessor.java b/maven-embedder/src/main/java/org/apache/maven/cli/configuration/SettingsXmlConfigurationProcessor.java
new file mode 100644
index 0000000..890a658
--- /dev/null
+++ b/maven-embedder/src/main/java/org/apache/maven/cli/configuration/SettingsXmlConfigurationProcessor.java
@@ -0,0 +1,308 @@
+package org.apache.maven.cli.configuration;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.util.List;
+
+import org.apache.commons.cli.CommandLine;
+import org.apache.maven.artifact.InvalidRepositoryException;
+import org.apache.maven.bridge.MavenRepositorySystem;
+import org.apache.maven.building.Source;
+import org.apache.maven.cli.CLIManager;
+import org.apache.maven.cli.CliRequest;
+import org.apache.maven.execution.MavenExecutionRequest;
+import org.apache.maven.execution.MavenExecutionRequestPopulationException;
+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;
+import org.apache.maven.settings.building.DefaultSettingsBuildingRequest;
+import org.apache.maven.settings.building.SettingsBuilder;
+import org.apache.maven.settings.building.SettingsBuildingRequest;
+import org.apache.maven.settings.building.SettingsBuildingResult;
+import org.apache.maven.settings.building.SettingsProblem;
+import org.apache.maven.settings.crypto.DefaultSettingsDecryptionRequest;
+import org.apache.maven.settings.crypto.SettingsDecrypter;
+import org.apache.maven.settings.crypto.SettingsDecryptionResult;
+import org.codehaus.plexus.component.annotations.Component;
+import org.codehaus.plexus.component.annotations.Requirement;
+import org.slf4j.Logger;
+
+@Component( role = ConfigurationProcessor.class, hint = SettingsXmlConfigurationProcessor.HINT )
+public class SettingsXmlConfigurationProcessor
+    implements ConfigurationProcessor
+{
+    public static final String HINT = "settings";
+
+    public static final String USER_HOME = System.getProperty( "user.home" );
+
+    public static final File USER_MAVEN_CONFIGURATION_HOME = new File( USER_HOME, ".m2" );
+
+    public static final File DEFAULT_USER_SETTINGS_FILE = new File( USER_MAVEN_CONFIGURATION_HOME, "settings.xml" );
+
+    public static final File DEFAULT_GLOBAL_SETTINGS_FILE = new File( System.getProperty( "maven.home", System
+        .getProperty( "user.dir", "" ) ), "conf/settings.xml" );
+
+    @Requirement
+    private Logger logger;
+
+    @Requirement
+    private SettingsBuilder settingsBuilder;
+
+    @Requirement
+    private SettingsDecrypter settingsDecrypter;
+
+    @Override
+    public void process( CliRequest cliRequest )
+        throws Exception
+    {
+        CommandLine commandLine = cliRequest.getCommandLine();
+        String workingDirectory = cliRequest.getWorkingDirectory();
+        MavenExecutionRequest request = cliRequest.getRequest();
+
+        File userSettingsFile;
+
+        if ( commandLine.hasOption( CLIManager.ALTERNATE_USER_SETTINGS ) )
+        {
+            userSettingsFile = new File( commandLine.getOptionValue( CLIManager.ALTERNATE_USER_SETTINGS ) );
+            userSettingsFile = resolveFile( userSettingsFile, workingDirectory );
+
+            if ( !userSettingsFile.isFile() )
+            {
+                throw new FileNotFoundException( "The specified user settings file does not exist: "
+                    + userSettingsFile );
+            }
+        }
+        else
+        {
+            userSettingsFile = DEFAULT_USER_SETTINGS_FILE;
+        }
+
+        File globalSettingsFile;
+
+        if ( commandLine.hasOption( CLIManager.ALTERNATE_GLOBAL_SETTINGS ) )
+        {
+            globalSettingsFile = new File( commandLine.getOptionValue( CLIManager.ALTERNATE_GLOBAL_SETTINGS ) );
+            globalSettingsFile = resolveFile( globalSettingsFile, workingDirectory );
+
+            if ( !globalSettingsFile.isFile() )
+            {
+                throw new FileNotFoundException( "The specified global settings file does not exist: "
+                    + globalSettingsFile );
+            }
+        }
+        else
+        {
+            globalSettingsFile = DEFAULT_GLOBAL_SETTINGS_FILE;
+        }
+
+        request.setGlobalSettingsFile( globalSettingsFile );
+        request.setUserSettingsFile( userSettingsFile );
+
+        SettingsBuildingRequest settingsRequest = new DefaultSettingsBuildingRequest();
+        settingsRequest.setGlobalSettingsFile( globalSettingsFile );
+        settingsRequest.setUserSettingsFile( userSettingsFile );
+        settingsRequest.setSystemProperties( cliRequest.getSystemProperties() );
+        settingsRequest.setUserProperties( cliRequest.getUserProperties() );
+
+        if ( request.getEventSpyDispatcher() != null )
+        {
+            request.getEventSpyDispatcher().onEvent( settingsRequest );
+        }
+
+        logger.debug( "Reading global settings from "
+            + getLocation( settingsRequest.getGlobalSettingsSource(), settingsRequest.getGlobalSettingsFile() ) );
+        logger.debug( "Reading user settings from "
+            + getLocation( settingsRequest.getUserSettingsSource(), settingsRequest.getUserSettingsFile() ) );
+
+        SettingsBuildingResult settingsResult = settingsBuilder.build( settingsRequest );
+
+        if ( request.getEventSpyDispatcher() != null )
+        {
+            request.getEventSpyDispatcher().onEvent( settingsResult );
+        }
+
+        populateFromSettings( request, settingsResult.getEffectiveSettings() );
+
+        if ( !settingsResult.getProblems().isEmpty() && logger.isWarnEnabled() )
+        {
+            logger.warn( "" );
+            logger.warn( "Some problems were encountered while building the effective settings" );
+
+            for ( SettingsProblem problem : settingsResult.getProblems() )
+            {
+                logger.warn( problem.getMessage() + " @ " + problem.getLocation() );
+            }
+            logger.warn( "" );
+        }
+
+        DefaultSettingsDecryptionRequest decrypt = new DefaultSettingsDecryptionRequest();
+        decrypt.setProxies( request.getProxies() );
+        decrypt.setServers( request.getServers() );
+        SettingsDecryptionResult decrypted = settingsDecrypter.decrypt( decrypt );
+
+        if ( logger.isDebugEnabled() )
+        {
+            for ( SettingsProblem problem : decrypted.getProblems() )
+            {
+                logger.debug( problem.getMessage(), problem.getException() );
+            }
+        }
+
+        request.setProxies( decrypt.getProxies() );
+        request.setServers( decrypt.getServers() );
+    }
+
+    public MavenExecutionRequest populateFromSettings( MavenExecutionRequest request, Settings settings )
+        throws MavenExecutionRequestPopulationException
+    {
+        if ( settings == null )
+        {
+            return request;
+        }
+
+        request.setOffline( settings.isOffline() );
+
+        request.setInteractiveMode( settings.isInteractiveMode() );
+
+        request.setPluginGroups( settings.getPluginGroups() );
+
+        request.setLocalRepositoryPath( settings.getLocalRepository() );
+
+        for ( Server server : settings.getServers() )
+        {
+            server = server.clone();
+
+            request.addServer( server );
+        }
+
+        //  <proxies>
+        //    <proxy>
+        //      <active>true</active>
+        //      <protocol>http</protocol>
+        //      <host>proxy.somewhere.com</host>
+        //      <port>8080</port>
+        //      <username>proxyuser</username>
+        //      <password>somepassword</password>
+        //      <nonProxyHosts>www.google.com|*.somewhere.com</nonProxyHosts>
+        //    </proxy>
+        //  </proxies>
+
+        for ( Proxy proxy : settings.getProxies() )
+        {
+            if ( !proxy.isActive() )
+            {
+                continue;
+            }
+
+            proxy = proxy.clone();
+
+            request.addProxy( proxy );
+        }
+
+        // <mirrors>
+        //   <mirror>
+        //     <id>nexus</id>
+        //     <mirrorOf>*</mirrorOf>
+        //     <url>http://repository.sonatype.org/content/groups/public</url>
+        //   </mirror>
+        // </mirrors>
+
+        for ( Mirror mirror : settings.getMirrors() )
+        {
+            mirror = mirror.clone();
+
+            request.addMirror( mirror );
+        }
+
+        request.setActiveProfiles( settings.getActiveProfiles() );
+
+        for ( org.apache.maven.settings.Profile rawProfile : settings.getProfiles() )
+        {
+            request.addProfile( SettingsUtils.convertFromSettingsProfile( rawProfile ) );
+
+            if ( settings.getActiveProfiles().contains( rawProfile.getId() ) )
+            {
+                List<Repository> remoteRepositories = rawProfile.getRepositories();
+                for ( Repository remoteRepository : remoteRepositories )
+                {
+                    try
+                    {
+                        request.addRemoteRepository( 
+                            MavenRepositorySystem.buildArtifactRepository( remoteRepository ) );
+                    }
+                    catch ( InvalidRepositoryException e )
+                    {
+                        // do nothing for now
+                    }
+                }
+                
+                List<Repository> pluginRepositories = rawProfile.getPluginRepositories();
+                for ( Repository pluginRepository : pluginRepositories )
+                {
+                    try
+                    {
+                        request.addPluginArtifactRepository( 
+                            MavenRepositorySystem.buildArtifactRepository( pluginRepository ) );
+                    }
+                    catch ( InvalidRepositoryException e )
+                    {
+                        // do nothing for now
+                    }
+                }                
+            }
+        }
+        return request;
+    }
+
+    private Object getLocation( Source source, File defaultLocation )
+    {
+        if ( source != null )
+        {
+            return source.getLocation();
+        }
+        return defaultLocation;
+    }
+
+    static File resolveFile( File file, String workingDirectory )
+    {
+        if ( file == null )
+        {
+            return null;
+        }
+        else if ( file.isAbsolute() )
+        {
+            return file;
+        }
+        else if ( file.getPath().startsWith( File.separator ) )
+        {
+            // drive-relative Windows path
+            return file.getAbsoluteFile();
+        }
+        else
+        {
+            return new File( workingDirectory, file.getPath() ).getAbsoluteFile();
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/maven/blob/79976342/maven-embedder/src/test/java/org/apache/maven/cli/MavenCliTest.java
----------------------------------------------------------------------
diff --git a/maven-embedder/src/test/java/org/apache/maven/cli/MavenCliTest.java b/maven-embedder/src/test/java/org/apache/maven/cli/MavenCliTest.java
index 0c85dfb..c8d75b1 100644
--- a/maven-embedder/src/test/java/org/apache/maven/cli/MavenCliTest.java
+++ b/maven-embedder/src/test/java/org/apache/maven/cli/MavenCliTest.java
@@ -24,7 +24,6 @@ import java.io.File;
 import junit.framework.TestCase;
 
 import org.apache.commons.cli.ParseException;
-import org.apache.maven.cli.MavenCli.CliRequest;
 
 public class MavenCliTest
     extends TestCase


[44/50] [abbrv] maven git commit: ignore .java-version in rat plugin

Posted by ah...@apache.org.
ignore .java-version in rat plugin


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

Branch: refs/heads/slf4j-log4j2
Commit: c88ac1bad586f8d9f6ab8892a4590847f3759308
Parents: 4085814
Author: Olivier Lamy <ol...@apache.org>
Authored: Sun Mar 15 22:33:52 2015 +1100
Committer: Olivier Lamy <ol...@apache.org>
Committed: Sun Mar 15 22:33:52 2015 +1100

----------------------------------------------------------------------
 pom.xml | 1 +
 1 file changed, 1 insertion(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/c88ac1ba/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 92fce44..8f7abb5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -546,6 +546,7 @@
             <exclude>README.bootstrap.txt</exclude>
             <exclude>.repository/**</exclude> <!-- jenkins with local maven repository -->
             <exclude>.maven/spy.log</exclude> <!-- hudson maven3 integration log -->
+            <exclude>.java-version</exclude>
           </excludes>
         </configuration>
       </plugin>


[48/50] [abbrv] maven git commit: changed svnpubsub url from /content to /components

Posted by ah...@apache.org.
changed svnpubsub url from /content to /components

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

Branch: refs/heads/slf4j-log4j2
Commit: f78742f3eafa4ce7c9fb47150644efce06693361
Parents: 9f50eab
Author: Hervé Boutemy <hb...@apache.org>
Authored: Tue Mar 31 01:00:53 2015 +0200
Committer: Hervé Boutemy <hb...@apache.org>
Committed: Tue Mar 31 01:00:53 2015 +0200

----------------------------------------------------------------------
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/f78742f3/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 8f7abb5..b0ab4e8 100644
--- a/pom.xml
+++ b/pom.xml
@@ -105,7 +105,7 @@
     <downloadUrl>http://maven.apache.org/download.html</downloadUrl>
     <site>
       <id>apache.website</id>
-      <url>scm:svn:https://svn.apache.org/repos/infra/websites/production/maven/content/${maven.site.path}</url>
+      <url>scm:svn:https://svn.apache.org/repos/infra/websites/production/maven/components/${maven.site.path}</url>
     </site>
   </distributionManagement>
 


[15/50] [abbrv] maven git commit: MNG-5767 updated build.xml to match maven changes

Posted by ah...@apache.org.
MNG-5767 updated build.xml to match maven changes

Signed-off-by: Igor Fedorenko <if...@apache.org>


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

Branch: refs/heads/slf4j-log4j2
Commit: 7b3e956753790d39fb8656dcaa046bcbac92b3a5
Parents: b01bf0c
Author: Igor Fedorenko <if...@apache.org>
Authored: Thu Feb 26 13:24:11 2015 -0500
Committer: Igor Fedorenko <if...@apache.org>
Committed: Thu Feb 26 13:24:11 2015 -0500

----------------------------------------------------------------------
 build.xml | 1 +
 1 file changed, 1 insertion(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/7b3e9567/build.xml
----------------------------------------------------------------------
diff --git a/build.xml b/build.xml
index a5dd90a..0442a12 100644
--- a/build.xml
+++ b/build.xml
@@ -268,6 +268,7 @@ Do you want to continue?</input>
       <arg value="-DdistributionId=${distributionId}" />
       <arg value="-DdistributionShortName=${distributionShortName}" />
       <arg value="-DdistributionName=${distributionName}" />
+      <jvmarg value="-Dmaven.multiModuleProjectDirectory=${basedir}" />
     </java>
   </target>
 


[11/50] [abbrv] maven git commit: MNG-5734: Fail, rather than just warning, on empty '' entries.

Posted by ah...@apache.org.
MNG-5734: Fail, rather than just warning, on empty '<module>' entries.

An incorrect non-blank module is currently treated as an error. Behave
the same way for a blank module, rather than simply warning about
the mistake.

Signed-off-by: Jason van Zyl <ja...@tesla.io>


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

Branch: refs/heads/slf4j-log4j2
Commit: b8dcb08731ce7e43399320ce7c7579c4a24481c9
Parents: fdcd34d
Author: Joseph Walton <jo...@kafsemo.org>
Authored: Sat Feb 21 17:33:01 2015 +1100
Committer: Jason van Zyl <ja...@tesla.io>
Committed: Sat Feb 21 09:22:27 2015 -0500

----------------------------------------------------------------------
 .../org/apache/maven/model/validation/DefaultModelValidator.java | 2 +-
 .../apache/maven/model/validation/DefaultModelValidatorTest.java | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/b8dcb087/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java
----------------------------------------------------------------------
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java b/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java
index def9c13..dd7bd4e 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java
@@ -312,7 +312,7 @@ public class DefaultModelValidator
                 String module = m.getModules().get( i );
                 if ( StringUtils.isBlank( module ) )
                 {
-                    addViolation( problems, Severity.WARNING, Version.BASE, "modules.module[" + i + "]", null,
+                    addViolation( problems, Severity.ERROR, Version.BASE, "modules.module[" + i + "]", null,
                                   "has been specified without a path to the project directory.",
                                   m.getLocation( "modules" ) );
                 }

http://git-wip-us.apache.org/repos/asf/maven/blob/b8dcb087/maven-model-builder/src/test/java/org/apache/maven/model/validation/DefaultModelValidatorTest.java
----------------------------------------------------------------------
diff --git a/maven-model-builder/src/test/java/org/apache/maven/model/validation/DefaultModelValidatorTest.java b/maven-model-builder/src/test/java/org/apache/maven/model/validation/DefaultModelValidatorTest.java
index 791a318..dde532d 100644
--- a/maven-model-builder/src/test/java/org/apache/maven/model/validation/DefaultModelValidatorTest.java
+++ b/maven-model-builder/src/test/java/org/apache/maven/model/validation/DefaultModelValidatorTest.java
@@ -430,9 +430,9 @@ public class DefaultModelValidatorTest
     {
         SimpleProblemCollector result = validate( "empty-module.xml" );
 
-        assertViolations( result, 0, 0, 1 );
+        assertViolations( result, 0, 1, 0 );
 
-        assertTrue( result.getWarnings().get( 0 ).contains( "'modules.module[0]' has been specified without a path" ) );
+        assertTrue( result.getErrors().get( 0 ).contains( "'modules.module[0]' has been specified without a path" ) );
     }
 
     public void testDuplicatePlugin()


[25/50] [abbrv] maven git commit: Roll back Wagon, when someone releases it we can update

Posted by ah...@apache.org.
Roll back Wagon, when someone releases it we can update


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

Branch: refs/heads/slf4j-log4j2
Commit: db9e7896ac01cb227540effd673f504eee7bf8ef
Parents: 368516c
Author: Jason van Zyl <ja...@tesla.io>
Authored: Wed Mar 4 11:18:47 2015 -0800
Committer: Jason van Zyl <ja...@tesla.io>
Committed: Wed Mar 4 11:18:47 2015 -0800

----------------------------------------------------------------------
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/db9e7896/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 0145b85..fc48cdc 100644
--- a/pom.xml
+++ b/pom.xml
@@ -54,7 +54,7 @@
     <guavaVersion>18.0</guavaVersion>
     <guiceVersion>3.2.5</guiceVersion>
     <sisuInjectVersion>0.3.0</sisuInjectVersion>
-    <wagonVersion>2.9-SNAPSHOT</wagonVersion> <!-- Verify SNAPSHOT for MNG-5605 -->
+    <wagonVersion>2.8</wagonVersion> <!-- Verify SNAPSHOT for MNG-5605 -->
     <securityDispatcherVersion>1.3</securityDispatcherVersion>
     <cipherVersion>1.7</cipherVersion>
     <modelloVersion>1.8.1</modelloVersion>


[20/50] [abbrv] maven git commit: MNG-5775 Make the project graph building code pluggable to allow for new/different implementations.

Posted by ah...@apache.org.
http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-core/src/test/java/org/apache/maven/graph/DefaultProjectDependencyGraphTest.java
----------------------------------------------------------------------
diff --git a/maven-core/src/test/java/org/apache/maven/graph/DefaultProjectDependencyGraphTest.java b/maven-core/src/test/java/org/apache/maven/graph/DefaultProjectDependencyGraphTest.java
new file mode 100644
index 0000000..e2caaeb
--- /dev/null
+++ b/maven-core/src/test/java/org/apache/maven/graph/DefaultProjectDependencyGraphTest.java
@@ -0,0 +1,172 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
+ * agreements. See the NOTICE file distributed with this work for additional information regarding
+ * copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package org.apache.maven.graph;
+
+import junit.framework.TestCase;
+import org.apache.maven.execution.ProjectDependencyGraph;
+import org.apache.maven.model.Dependency;
+import org.apache.maven.project.DuplicateProjectException;
+import org.apache.maven.project.MavenProject;
+import org.codehaus.plexus.util.dag.CycleDetectedException;
+
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ * @author Kristian Rosenvold
+ */
+public class DefaultProjectDependencyGraphTest
+    extends TestCase
+{
+
+    private final MavenProject aProject = createA();
+
+    private final MavenProject depender1 = createProject( Arrays.asList( toDependency( aProject ) ), "depender1" );
+
+    private final MavenProject depender2 = createProject( Arrays.asList( toDependency( aProject ) ), "depender2" );
+
+    private final MavenProject depender3 = createProject( Arrays.asList( toDependency( aProject ) ), "depender3" );
+
+    private final MavenProject depender4 =
+        createProject( Arrays.asList( toDependency( aProject ), toDependency( depender3 ) ), "depender4" );
+
+    private final MavenProject transitiveOnly =
+        createProject( Arrays.asList( toDependency( depender3 ) ), "depender5" );
+
+    public void testGetSortedProjects()
+        throws DuplicateProjectException, CycleDetectedException
+    {
+        ProjectDependencyGraph graph = new DefaultProjectDependencyGraph( Arrays.asList( depender1, aProject ) );
+        final List<MavenProject> sortedProjects = graph.getSortedProjects();
+        assertEquals( aProject, sortedProjects.get( 0 ) );
+        assertEquals( depender1, sortedProjects.get( 1 ) );
+    }
+
+    public void testVerifyExpectedParentStructure()
+        throws CycleDetectedException, DuplicateProjectException
+    {
+        // This test verifies the baseline structure used in susequent tests. If this fails, the rest will fail.
+        ProjectDependencyGraph graph = threeProjectsDependingOnASingle();
+        final List<MavenProject> sortedProjects = graph.getSortedProjects();
+        assertEquals( aProject, sortedProjects.get( 0 ) );
+        assertEquals( depender1, sortedProjects.get( 1 ) );
+        assertEquals( depender2, sortedProjects.get( 2 ) );
+        assertEquals( depender3, sortedProjects.get( 3 ) );
+    }
+
+    public void testVerifyThatDownsteamProjectsComeInSortedOrder()
+        throws CycleDetectedException, DuplicateProjectException
+    {
+        final List<MavenProject> downstreamProjects =
+            threeProjectsDependingOnASingle().getDownstreamProjects( aProject, true );
+        assertEquals( depender1, downstreamProjects.get( 0 ) );
+        assertEquals( depender2, downstreamProjects.get( 1 ) );
+        assertEquals( depender3, downstreamProjects.get( 2 ) );
+    }
+
+    public void testTransitivesInOrder()
+        throws CycleDetectedException, DuplicateProjectException
+    {
+        final ProjectDependencyGraph graph =
+            new DefaultProjectDependencyGraph( Arrays.asList( depender1, depender4, depender2, depender3, aProject ) );
+
+        final List<MavenProject> downstreamProjects = graph.getDownstreamProjects( aProject, true );
+        assertEquals( depender1, downstreamProjects.get( 0 ) );
+        assertEquals( depender3, downstreamProjects.get( 1 ) );
+        assertEquals( depender4, downstreamProjects.get( 2 ) );
+        assertEquals( depender2, downstreamProjects.get( 3 ) );
+    }
+
+    public void testNonTransitivesInOrder()
+        throws CycleDetectedException, DuplicateProjectException
+    {
+        final ProjectDependencyGraph graph =
+            new DefaultProjectDependencyGraph( Arrays.asList( depender1, depender4, depender2, depender3, aProject ) );
+
+        final List<MavenProject> downstreamProjects = graph.getDownstreamProjects( aProject, false );
+        assertEquals( depender1, downstreamProjects.get( 0 ) );
+        assertEquals( depender3, downstreamProjects.get( 1 ) );
+        assertEquals( depender4, downstreamProjects.get( 2 ) );
+        assertEquals( depender2, downstreamProjects.get( 3 ) );
+    }
+
+    public void testWithTranistiveOnly()
+        throws CycleDetectedException, DuplicateProjectException
+    {
+        final ProjectDependencyGraph graph = new DefaultProjectDependencyGraph(
+            Arrays.asList( depender1, transitiveOnly, depender2, depender3, aProject ) );
+
+        final List<MavenProject> downstreamProjects = graph.getDownstreamProjects( aProject, true );
+        assertEquals( depender1, downstreamProjects.get( 0 ) );
+        assertEquals( depender3, downstreamProjects.get( 1 ) );
+        assertEquals( transitiveOnly, downstreamProjects.get( 2 ) );
+        assertEquals( depender2, downstreamProjects.get( 3 ) );
+    }
+
+    public void testWithMissingTranistiveOnly()
+        throws CycleDetectedException, DuplicateProjectException
+    {
+        final ProjectDependencyGraph graph = new DefaultProjectDependencyGraph(
+            Arrays.asList( depender1, transitiveOnly, depender2, depender3, aProject ) );
+
+        final List<MavenProject> downstreamProjects = graph.getDownstreamProjects( aProject, false );
+        assertEquals( depender1, downstreamProjects.get( 0 ) );
+        assertEquals( depender3, downstreamProjects.get( 1 ) );
+        assertEquals( depender2, downstreamProjects.get( 2 ) );
+    }
+
+    public void testGetUpstreamProjects()
+        throws CycleDetectedException, DuplicateProjectException
+    {
+        ProjectDependencyGraph graph = threeProjectsDependingOnASingle();
+        final List<MavenProject> downstreamProjects = graph.getUpstreamProjects( depender1, true );
+        assertEquals( aProject, downstreamProjects.get( 0 ) );
+    }
+
+    private ProjectDependencyGraph threeProjectsDependingOnASingle()
+        throws CycleDetectedException, DuplicateProjectException
+    {
+        return new DefaultProjectDependencyGraph( Arrays.asList( depender1, depender2, depender3, aProject ) );
+    }
+
+    private static MavenProject createA()
+    {
+        MavenProject result = new MavenProject();
+        result.setGroupId( "org.apache" );
+        result.setArtifactId( "A" );
+        result.setVersion( "1.2" );
+        return result;
+    }
+
+    static Dependency toDependency( MavenProject mavenProject )
+    {
+        final Dependency dependency = new Dependency();
+        dependency.setArtifactId( mavenProject.getArtifactId() );
+        dependency.setGroupId( mavenProject.getGroupId() );
+        dependency.setVersion( mavenProject.getVersion() );
+        return dependency;
+    }
+
+    private static MavenProject createProject( List<Dependency> dependencies, String artifactId )
+    {
+        MavenProject result = new MavenProject();
+        result.setGroupId( "org.apache" );
+        result.setArtifactId( artifactId );
+        result.setVersion( "1.2" );
+        result.setDependencies( dependencies );
+        return result;
+    }
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-core/src/test/java/org/apache/maven/lifecycle/LifecycleExecutorTest.java
----------------------------------------------------------------------
diff --git a/maven-core/src/test/java/org/apache/maven/lifecycle/LifecycleExecutorTest.java b/maven-core/src/test/java/org/apache/maven/lifecycle/LifecycleExecutorTest.java
index 04be08b..99b07e3 100644
--- a/maven-core/src/test/java/org/apache/maven/lifecycle/LifecycleExecutorTest.java
+++ b/maven-core/src/test/java/org/apache/maven/lifecycle/LifecycleExecutorTest.java
@@ -409,6 +409,11 @@ public class LifecycleExecutorTest
             {
                 return Collections.emptyList();
             }
+            
+            public java.util.List<MavenProject> getAllSortedProjects()
+            {
+                return Collections.emptyList();
+            }
         } );
 
         final List<String> log = new ArrayList<String>();

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-model-builder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-model-builder/pom.xml b/maven-model-builder/pom.xml
index 738f64f..186e207 100644
--- a/maven-model-builder/pom.xml
+++ b/maven-model-builder/pom.xml
@@ -51,7 +51,10 @@
       <groupId>org.apache.maven</groupId>
       <artifactId>maven-builder-support</artifactId>
     </dependency>
-
+    <dependency>
+      <groupId>com.google.guava</groupId>
+      <artifactId>guava</artifactId>
+    </dependency>
     <dependency>
       <groupId>org.eclipse.sisu</groupId>
       <artifactId>org.eclipse.sisu.plexus</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java
----------------------------------------------------------------------
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java b/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java
index 80effb1..52b3c9c 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java
@@ -19,6 +19,10 @@ package org.apache.maven.model.building;
  * under the License.
  */
 
+
+import static org.apache.maven.model.building.Result.error;
+import static org.apache.maven.model.building.Result.newResult;
+
 import java.io.File;
 import java.io.IOException;
 import java.util.ArrayList;
@@ -63,6 +67,7 @@ import org.apache.maven.model.profile.ProfileSelector;
 import org.apache.maven.model.resolution.InvalidRepositoryException;
 import org.apache.maven.model.resolution.ModelResolver;
 import org.apache.maven.model.resolution.UnresolvableModelException;
+import org.apache.maven.model.resolution.WorkspaceModelResolver;
 import org.apache.maven.model.superpom.SuperPomProvider;
 import org.apache.maven.model.validation.ModelValidator;
 import org.codehaus.plexus.component.annotations.Component;
@@ -241,8 +246,8 @@ public class DefaultModelBuilder
         DefaultProfileActivationContext profileActivationContext = getProfileActivationContext( request );
 
         problems.setSource( "(external profiles)" );
-        List<Profile> activeExternalProfiles =
-            profileSelector.getActiveProfiles( request.getProfiles(), profileActivationContext, problems );
+        List<Profile> activeExternalProfiles = profileSelector.getActiveProfiles( request.getProfiles(),
+                                                                                  profileActivationContext, problems );
 
         result.setActiveExternalProfiles( activeExternalProfiles );
 
@@ -258,7 +263,11 @@ public class DefaultModelBuilder
         }
 
         // read and validate raw model
-        Model inputModel = readModel( request.getModelSource(), request.getPomFile(), request, problems );
+        Model inputModel = request.getRawModel();
+        if ( inputModel == null )
+        {
+            inputModel = readModel( request.getModelSource(), request.getPomFile(), request, problems );
+        }
 
         problems.setRootModel( inputModel );
 
@@ -272,11 +281,12 @@ public class DefaultModelBuilder
         {
             lineage.add( currentData );
 
-            Model tmpModel = currentData.getModel();
-
-            Model rawModel = tmpModel.clone();
+            Model rawModel = currentData.getModel();
             currentData.setRawModel( rawModel );
 
+            Model tmpModel = rawModel.clone();
+            currentData.setModel( tmpModel );
+
             problems.setSource( tmpModel );
 
             // model normalization
@@ -284,8 +294,8 @@ public class DefaultModelBuilder
 
             profileActivationContext.setProjectProperties( tmpModel.getProperties() );
 
-            List<Profile> activePomProfiles =
-                profileSelector.getActiveProfiles( rawModel.getProfiles(), profileActivationContext, problems );
+            List<Profile> activePomProfiles = profileSelector.getActiveProfiles( rawModel.getProfiles(),
+                                                                                 profileActivationContext, problems );
             currentData.setActiveProfiles( activePomProfiles );
 
             Map<String, Activation> interpolatedActivations = getProfileActivations( rawModel, false );
@@ -320,13 +330,13 @@ public class DefaultModelBuilder
             }
             else if ( currentData == resultData )
             { // First iteration - add initial parent id after version resolution.
-                currentData.setGroupId( currentData.getRawModel().getGroupId() == null
-                                            ? parentData.getGroupId()
-                                            : currentData.getRawModel().getGroupId() );
+                currentData.setGroupId( currentData.getRawModel().getGroupId() == null ? parentData.getGroupId()
+                                                                                      : currentData.getRawModel()
+                                                                                          .getGroupId() );
 
-                currentData.setVersion( currentData.getRawModel().getVersion() == null
-                                            ? parentData.getVersion()
-                                            : currentData.getRawModel().getVersion() );
+                currentData.setVersion( currentData.getRawModel().getVersion() == null ? parentData.getVersion()
+                                                                                      : currentData.getRawModel()
+                                                                                          .getVersion() );
 
                 currentData.setArtifactId( currentData.getRawModel().getArtifactId() );
                 parentIds.add( currentData.getId() );
@@ -345,9 +355,8 @@ public class DefaultModelBuilder
                 }
                 message += parentData.getId();
 
-                problems.add(
-                    new ModelProblemCollectorRequest( ModelProblem.Severity.FATAL, ModelProblem.Version.BASE ).
-                    setMessage( message ) );
+                problems.add( new ModelProblemCollectorRequest( ModelProblem.Severity.FATAL, ModelProblem.Version.BASE )
+                    .setMessage( message ) );
 
                 throw problems.newModelBuildingException();
             }
@@ -376,7 +385,7 @@ public class DefaultModelBuilder
         modelUrlNormalizer.normalize( resultModel, request );
 
         // Now the fully interpolated model is available: reconfigure the resolver
-        configureResolver( request.getModelResolver(), resultModel, problems , true );
+        configureResolver( request.getModelResolver(), resultModel, problems, true );
 
         resultData.setGroupId( resultModel.getGroupId() );
         resultData.setArtifactId( resultModel.getArtifactId() );
@@ -469,6 +478,23 @@ public class DefaultModelBuilder
         return result;
     }
 
+    @Override
+    public Result<? extends Model> buildRawModel( File pomFile, int validationLevel, boolean locationTracking )
+    {
+        final ModelBuildingRequest request = new DefaultModelBuildingRequest().setValidationLevel( validationLevel )
+            .setLocationTracking( locationTracking );
+        final DefaultModelProblemCollector collector = 
+            new DefaultModelProblemCollector( new DefaultModelBuildingResult() );
+        try
+        {
+            return newResult( readModel( null, pomFile, request, collector ), collector.getProblems() );
+        }
+        catch ( ModelBuildingException e )
+        {
+            return error( collector.getProblems() );
+        }
+    }
+
     private Model readModel( ModelSource modelSource, File pomFile, ModelBuildingRequest request,
                              DefaultModelProblemCollector problems )
         throws ModelBuildingException
@@ -524,14 +550,14 @@ public class DefaultModelBuilder
                 if ( pomFile != null )
                 {
                     problems.add( new ModelProblemCollectorRequest( Severity.ERROR, Version.V20 )
-                            .setMessage( "Malformed POM " + modelSource.getLocation() + ": " + e.getMessage() )
-                            .setException( e ) );
+                        .setMessage( "Malformed POM " + modelSource.getLocation() + ": " + e.getMessage() )
+                        .setException( e ) );
                 }
                 else
                 {
                     problems.add( new ModelProblemCollectorRequest( Severity.WARNING, Version.V20 )
-                            .setMessage( "Malformed POM " + modelSource.getLocation() + ": " + e.getMessage() )
-                            .setException( e ) );
+                        .setMessage( "Malformed POM " + modelSource.getLocation() + ": " + e.getMessage() )
+                        .setException( e ) );
                 }
             }
 
@@ -544,8 +570,8 @@ public class DefaultModelBuilder
         catch ( ModelParseException e )
         {
             problems.add( new ModelProblemCollectorRequest( Severity.FATAL, Version.BASE )
-                    .setMessage( "Non-parseable POM " + modelSource.getLocation() + ": " + e.getMessage() )
-                    .setException( e ) );
+                .setMessage( "Non-parseable POM " + modelSource.getLocation() + ": " + e.getMessage() )
+                .setException( e ) );
             throw problems.newModelBuildingException();
         }
         catch ( IOException e )
@@ -564,8 +590,7 @@ public class DefaultModelBuilder
                 }
             }
             problems.add( new ModelProblemCollectorRequest( Severity.FATAL, Version.BASE )
-                    .setMessage( "Non-readable POM " + modelSource.getLocation() + ": " + msg )
-                    .setException( e ) );
+                .setMessage( "Non-readable POM " + modelSource.getLocation() + ": " + msg ).setException( e ) );
             throw problems.newModelBuildingException();
         }
 
@@ -621,9 +646,8 @@ public class DefaultModelBuilder
             catch ( InvalidRepositoryException e )
             {
                 problems.add( new ModelProblemCollectorRequest( Severity.ERROR, Version.BASE )
-                        .setMessage( "Invalid repository " + repository.getId() + ": " + e.getMessage() )
-                        .setLocation( repository.getLocation( "" ) )
-                        .setException( e ) );
+                    .setMessage( "Invalid repository " + repository.getId() + ": " + e.getMessage() )
+                    .setLocation( repository.getLocation( "" ) ).setException( e ) );
             }
         }
     }
@@ -675,7 +699,8 @@ public class DefaultModelBuilder
             if ( versions.get( key ) == null && managedVersions.get( key ) == null )
             {
                 InputLocation location = plugins.get( key ).getLocation( "" );
-                problems.add( new ModelProblemCollectorRequest( Severity.WARNING, Version.V20 )
+                problems
+                    .add( new ModelProblemCollectorRequest( Severity.WARNING, Version.V20 )
                         .setMessage( "'build.plugins.plugin.version' for " + key + " is missing." )
                         .setLocation( location ) );
             }
@@ -800,9 +825,9 @@ public class DefaultModelBuilder
             if ( !"pom".equals( parentModel.getPackaging() ) )
             {
                 problems.add( new ModelProblemCollectorRequest( Severity.ERROR, Version.BASE )
-                        .setMessage( "Invalid packaging for parent POM " + ModelProblemUtils.toSourceHint( parentModel )
+                    .setMessage( "Invalid packaging for parent POM " + ModelProblemUtils.toSourceHint( parentModel )
                                      + ", must be \"pom\" but is \"" + parentModel.getPackaging() + "\"" )
-                        .setLocation( parentModel.getLocation( "packaging" ) ) );
+                    .setLocation( parentModel.getLocation( "packaging" ) ) );
             }
         }
         else
@@ -817,20 +842,52 @@ public class DefaultModelBuilder
                                          DefaultModelProblemCollector problems )
         throws ModelBuildingException
     {
-        ModelSource candidateSource = getParentPomFile( childModel, childSource );
-
-        if ( candidateSource == null )
+        final Parent parent = childModel.getParent();
+        final ModelSource candidateSource;
+        final Model candidateModel;
+        final WorkspaceModelResolver resolver = request.getWorkspaceModelResolver();
+        if ( resolver == null )
         {
-            return null;
-        }
+            candidateSource = getParentPomFile( childModel, childSource );
+
+            if ( candidateSource == null )
+            {
+                return null;
+            }
+
+            File pomFile = null;
+            if ( candidateSource instanceof FileModelSource )
+            {
+                pomFile = ( (FileModelSource) candidateSource ).getPomFile();
+            }
 
-        File pomFile = null;
-        if ( candidateSource instanceof FileModelSource )
+            candidateModel = readModel( candidateSource, pomFile, request, problems );
+        }
+        else
         {
-            pomFile = ( (FileModelSource) candidateSource ).getPomFile();
+            try
+            {
+                candidateModel =
+                    resolver.resolveRawModel( parent.getGroupId(), parent.getArtifactId(), parent.getVersion() );
+            }
+            catch ( UnresolvableModelException e )
+            {
+                problems.add( new ModelProblemCollectorRequest( Severity.FATAL, Version.BASE ) //
+                .setMessage( e.getMessage().toString() ).setLocation( parent.getLocation( "" ) ).setException( e ) );
+                throw problems.newModelBuildingException();
+            }
+            if ( candidateModel == null )
+            {
+                return null;
+            }
+            candidateSource = new FileModelSource( candidateModel.getPomFile() );
         }
 
-        Model candidateModel = readModel( candidateSource, pomFile, request, problems );
+        //
+        // TODO:jvz Why isn't all this checking the job of the duty of the workspace resolver, we know that we
+        // have a model that is suitable, yet more checks are done here and the one for the version is problematic
+        // before because with parents as ranges it will never work in this scenario.
+        //
 
         String groupId = candidateModel.getGroupId();
         if ( groupId == null && candidateModel.getParent() != null )
@@ -844,8 +901,6 @@ public class DefaultModelBuilder
             version = candidateModel.getParent().getVersion();
         }
 
-        Parent parent = childModel.getParent();
-
         if ( groupId == null || !groupId.equals( parent.getGroupId() ) || artifactId == null
             || !artifactId.equals( parent.getArtifactId() ) )
         {
@@ -861,15 +916,19 @@ public class DefaultModelBuilder
 
             problems.setSource( childModel );
             problems.add( new ModelProblemCollectorRequest( Severity.WARNING, Version.BASE )
-                    .setMessage( buffer.toString() )
-                    .setLocation( parent.getLocation( "" ) ) );
-            return null;
-        }
-        if ( version == null || !version.equals( parent.getVersion() ) )
-        {
+                .setMessage( buffer.toString() ).setLocation( parent.getLocation( "" ) ) );
             return null;
         }
 
+        //
+        // Here we just need to know that a version is fine to use but this validation we can do in our workspace
+        // resolver.
+        //
+
+        /*
+         * if ( version == null || !version.equals( parent.getVersion() ) ) { return null; }
+         */
+
         ModelData parentData = new ModelData( candidateSource, candidateModel, groupId, artifactId, version );
 
         return parentData;
@@ -944,9 +1003,7 @@ public class DefaultModelBuilder
             }
 
             problems.add( new ModelProblemCollectorRequest( Severity.FATAL, Version.BASE )
-                    .setMessage( buffer.toString() )
-                    .setLocation( parent.getLocation( "" ) )
-                    .setException( e ) );
+                .setMessage( buffer.toString() ).setLocation( parent.getLocation( "" ) ).setException( e ) );
             throw problems.newModelBuildingException();
         }
 
@@ -969,18 +1026,17 @@ public class DefaultModelBuilder
         {
             if ( childModel.getVersion() == null )
             {
-                problems.add( new ModelProblemCollectorRequest( Severity.FATAL, Version.V31 ).
-                    setMessage( "Version must be a constant" ).
-                    setLocation( childModel.getLocation( "" ) ) );
+                problems.add( new ModelProblemCollectorRequest( Severity.FATAL, Version.V31 )
+                    .setMessage( "Version must be a constant" ).setLocation( childModel.getLocation( "" ) ) );
 
             }
             else
             {
                 if ( childModel.getVersion().indexOf( "${" ) > -1 )
                 {
-                    problems.add( new ModelProblemCollectorRequest( Severity.FATAL, Version.V31 ).
-                        setMessage( "Version must be a constant" ).
-                        setLocation( childModel.getLocation( "version" ) ) );
+                    problems.add( new ModelProblemCollectorRequest( Severity.FATAL, Version.V31 )
+                        .setMessage( "Version must be a constant" )
+                        .setLocation( childModel.getLocation( "version" ) ) );
 
                 }
             }
@@ -1013,7 +1069,8 @@ public class DefaultModelBuilder
 
         importIds.add( importing );
 
-        ModelResolver modelResolver = request.getModelResolver();
+        final WorkspaceModelResolver workspaceResolver = request.getWorkspaceModelResolver();
+        final ModelResolver modelResolver = request.getModelResolver();
 
         ModelBuildingRequest importRequest = null;
 
@@ -1037,25 +1094,25 @@ public class DefaultModelBuilder
             if ( groupId == null || groupId.length() <= 0 )
             {
                 problems.add( new ModelProblemCollectorRequest( Severity.ERROR, Version.BASE )
-                        .setMessage( "'dependencyManagement.dependencies.dependency.groupId' for "
-                                        + dependency.getManagementKey() + " is missing." )
-                        .setLocation( dependency.getLocation( "" ) ) );
+                    .setMessage( "'dependencyManagement.dependencies.dependency.groupId' for "
+                                     + dependency.getManagementKey() + " is missing." )
+                    .setLocation( dependency.getLocation( "" ) ) );
                 continue;
             }
             if ( artifactId == null || artifactId.length() <= 0 )
             {
                 problems.add( new ModelProblemCollectorRequest( Severity.ERROR, Version.BASE )
-                        .setMessage( "'dependencyManagement.dependencies.dependency.artifactId' for "
-                                        + dependency.getManagementKey() + " is missing." )
-                        .setLocation( dependency.getLocation( "" ) ) );
+                    .setMessage( "'dependencyManagement.dependencies.dependency.artifactId' for "
+                                     + dependency.getManagementKey() + " is missing." )
+                    .setLocation( dependency.getLocation( "" ) ) );
                 continue;
             }
             if ( version == null || version.length() <= 0 )
             {
                 problems.add( new ModelProblemCollectorRequest( Severity.ERROR, Version.BASE )
-                        .setMessage( "'dependencyManagement.dependencies.dependency.version' for "
-                                        + dependency.getManagementKey() + " is missing." )
-                        .setLocation( dependency.getLocation( "" ) ) );
+                    .setMessage( "'dependencyManagement.dependencies.dependency.version' for "
+                                     + dependency.getManagementKey() + " is missing." )
+                    .setLocation( dependency.getLocation( "" ) ) );
                 continue;
             }
 
@@ -1074,67 +1131,85 @@ public class DefaultModelBuilder
                 continue;
             }
 
-            DependencyManagement importMngt =
-                getCache( request.getModelCache(), groupId, artifactId, version, ModelCacheTag.IMPORT );
+            DependencyManagement importMngt = getCache( request.getModelCache(), groupId, artifactId, version,
+                                                        ModelCacheTag.IMPORT );
 
             if ( importMngt == null )
             {
-                if ( modelResolver == null )
+                if ( workspaceResolver == null && modelResolver == null )
                 {
                     throw new IllegalArgumentException( "no model resolver provided, cannot resolve import POM "
                         + ModelProblemUtils.toId( groupId, artifactId, version ) + " for POM "
                         + ModelProblemUtils.toSourceHint( model ) );
                 }
 
-                ModelSource importSource;
-                try
+                Model importModel = null;
+                if ( workspaceResolver != null )
                 {
-                    importSource = modelResolver.resolveModel( groupId, artifactId, version );
+                    try
+                    {
+                        importModel = workspaceResolver.resolveEffectiveModel( groupId, artifactId, version );
+                    }
+                    catch ( UnresolvableModelException e )
+                    {
+                        problems.add( new ModelProblemCollectorRequest( Severity.FATAL, Version.BASE )
+                            .setMessage( e.getMessage().toString() ).setException( e ) );
+                        continue;
+                    }
                 }
-                catch ( UnresolvableModelException e )
+
+                // no workspace resolver or workspace resolver returned null (i.e. model not in workspace)
+                if ( importModel == null )
                 {
-                    StringBuilder buffer = new StringBuilder( 256 );
-                    buffer.append( "Non-resolvable import POM" );
-                    if ( !containsCoordinates( e.getMessage(), groupId, artifactId, version ) )
+                    final ModelSource importSource;
+                    try
                     {
-                        buffer.append( " " ).append( ModelProblemUtils.toId( groupId, artifactId, version ) );
+                        importSource = modelResolver.resolveModel( groupId, artifactId, version );
                     }
-                    buffer.append( ": " ).append( e.getMessage() );
+                    catch ( UnresolvableModelException e )
+                    {
+                        StringBuilder buffer = new StringBuilder( 256 );
+                        buffer.append( "Non-resolvable import POM" );
+                        if ( !containsCoordinates( e.getMessage(), groupId, artifactId, version ) )
+                        {
+                            buffer.append( " " ).append( ModelProblemUtils.toId( groupId, artifactId, version ) );
+                        }
+                        buffer.append( ": " ).append( e.getMessage() );
 
-                    problems.add( new ModelProblemCollectorRequest( Severity.ERROR, Version.BASE )
-                            .setMessage( buffer.toString() )
-                            .setLocation( dependency.getLocation( "" ) )
+                        problems.add( new ModelProblemCollectorRequest( Severity.ERROR, Version.BASE )
+                            .setMessage( buffer.toString() ).setLocation( dependency.getLocation( "" ) )
                             .setException( e ) );
-                    continue;
-                }
+                        continue;
+                    }
 
-                if ( importRequest == null )
-                {
-                    importRequest = new DefaultModelBuildingRequest();
-                    importRequest.setValidationLevel( ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL );
-                    importRequest.setModelCache( request.getModelCache() );
-                    importRequest.setSystemProperties( request.getSystemProperties() );
-                    importRequest.setUserProperties( request.getUserProperties() );
-                    importRequest.setLocationTracking( request.isLocationTracking() );
-                }
+                    if ( importRequest == null )
+                    {
+                        importRequest = new DefaultModelBuildingRequest();
+                        importRequest.setValidationLevel( ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL );
+                        importRequest.setModelCache( request.getModelCache() );
+                        importRequest.setSystemProperties( request.getSystemProperties() );
+                        importRequest.setUserProperties( request.getUserProperties() );
+                        importRequest.setLocationTracking( request.isLocationTracking() );
+                    }
 
-                importRequest.setModelSource( importSource );
-                importRequest.setModelResolver( modelResolver.newCopy() );
+                    importRequest.setModelSource( importSource );
+                    importRequest.setModelResolver( modelResolver.newCopy() );
 
-                ModelBuildingResult importResult;
-                try
-                {
-                    importResult = build( importRequest );
-                }
-                catch ( ModelBuildingException e )
-                {
-                    problems.addAll( e.getProblems() );
-                    continue;
-                }
+                    final ModelBuildingResult importResult;
+                    try
+                    {
+                        importResult = build( importRequest );
+                    }
+                    catch ( ModelBuildingException e )
+                    {
+                        problems.addAll( e.getProblems() );
+                        continue;
+                    }
 
-                problems.addAll( importResult.getProblems() );
+                    problems.addAll( importResult.getProblems() );
 
-                Model importModel = importResult.getEffectiveModel();
+                    importModel = importResult.getEffectiveModel();
+                }
 
                 importMngt = importModel.getDependencyManagement();
 

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuildingRequest.java
----------------------------------------------------------------------
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuildingRequest.java b/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuildingRequest.java
index bd4211a..8b4a01b 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuildingRequest.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuildingRequest.java
@@ -25,8 +25,10 @@ import java.util.Date;
 import java.util.List;
 import java.util.Properties;
 
+import org.apache.maven.model.Model;
 import org.apache.maven.model.Profile;
 import org.apache.maven.model.resolution.ModelResolver;
+import org.apache.maven.model.resolution.WorkspaceModelResolver;
 
 /**
  * Collects settings that control building of effective models.
@@ -37,6 +39,8 @@ public class DefaultModelBuildingRequest
     implements ModelBuildingRequest
 {
 
+    private Model rawModel;
+
     private File pomFile;
 
     private ModelSource modelSource;
@@ -67,6 +71,8 @@ public class DefaultModelBuildingRequest
 
     private ModelCache modelCache;
 
+    private WorkspaceModelResolver workspaceResolver;
+
     /**
      * Creates an empty request.
      */
@@ -373,4 +379,30 @@ public class DefaultModelBuildingRequest
         return this;
     }
 
+    @Override
+    public Model getRawModel()
+    {
+        return rawModel;
+    }
+
+    @Override
+    public ModelBuildingRequest setRawModel( Model rawModel )
+    {
+        this.rawModel = rawModel;
+        return this;
+    }
+
+    @Override
+    public WorkspaceModelResolver getWorkspaceModelResolver()
+    {
+        return workspaceResolver;
+    }
+
+    @Override
+    public ModelBuildingRequest setWorkspaceModelResolver( WorkspaceModelResolver workspaceResolver )
+    {
+        this.workspaceResolver = workspaceResolver;
+        return this;
+    }
+
 }

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-model-builder/src/main/java/org/apache/maven/model/building/FilterModelBuildingRequest.java
----------------------------------------------------------------------
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/building/FilterModelBuildingRequest.java b/maven-model-builder/src/main/java/org/apache/maven/model/building/FilterModelBuildingRequest.java
index 7074689..c5c2cbf 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/building/FilterModelBuildingRequest.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/building/FilterModelBuildingRequest.java
@@ -24,8 +24,10 @@ import java.util.Date;
 import java.util.List;
 import java.util.Properties;
 
+import org.apache.maven.model.Model;
 import org.apache.maven.model.Profile;
 import org.apache.maven.model.resolution.ModelResolver;
+import org.apache.maven.model.resolution.WorkspaceModelResolver;
 
 /**
  * A model building request that delegates all methods invocations to another request, meant for easy transformations by
@@ -254,4 +256,30 @@ class FilterModelBuildingRequest
         return this;
     }
 
-}
+    @Override
+    public Model getRawModel()
+    {
+        return request.getRawModel();
+    }
+
+    @Override
+    public ModelBuildingRequest setRawModel( Model rawModel )
+    {
+        request.setRawModel( rawModel );
+        return this;
+    }
+
+    @Override
+    public WorkspaceModelResolver getWorkspaceModelResolver()
+    {
+        return request.getWorkspaceModelResolver();
+    }
+
+    @Override
+    public ModelBuildingRequest setWorkspaceModelResolver( WorkspaceModelResolver workspaceResolver )
+    {
+        request.setWorkspaceModelResolver( workspaceResolver );
+        return this;
+    }
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-model-builder/src/main/java/org/apache/maven/model/building/ModelBuilder.java
----------------------------------------------------------------------
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/building/ModelBuilder.java b/maven-model-builder/src/main/java/org/apache/maven/model/building/ModelBuilder.java
index c6c75f9..2a49a21 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/building/ModelBuilder.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/building/ModelBuilder.java
@@ -19,6 +19,10 @@ package org.apache.maven.model.building;
  * under the License.
  */
 
+import java.io.File;
+
+import org.apache.maven.model.Model;
+
 /**
  * Builds the effective model from a POM.
  *
@@ -51,4 +55,13 @@ public interface ModelBuilder
     ModelBuildingResult build( ModelBuildingRequest request, ModelBuildingResult result )
         throws ModelBuildingException;
 
+    /**
+     * Performs only the part of {@link ModelBuilder#build(ModelBuildingRequest)} that loads the raw model
+     *
+     * @param request
+     * @return
+     * @throws ModelBuildingException
+     */
+    Result<? extends Model> buildRawModel( File pomFile, int validationLevel, boolean locationTracking );
+
 }

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-model-builder/src/main/java/org/apache/maven/model/building/ModelBuildingRequest.java
----------------------------------------------------------------------
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/building/ModelBuildingRequest.java b/maven-model-builder/src/main/java/org/apache/maven/model/building/ModelBuildingRequest.java
index 2a3a25a..c10274d 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/building/ModelBuildingRequest.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/building/ModelBuildingRequest.java
@@ -24,8 +24,10 @@ import java.util.Date;
 import java.util.List;
 import java.util.Properties;
 
+import org.apache.maven.model.Model;
 import org.apache.maven.model.Profile;
 import org.apache.maven.model.resolution.ModelResolver;
+import org.apache.maven.model.resolution.WorkspaceModelResolver;
 
 /**
  * Collects settings that control the building of effective models.
@@ -63,6 +65,20 @@ public interface ModelBuildingRequest
     int VALIDATION_LEVEL_STRICT = VALIDATION_LEVEL_MAVEN_3_0;
 
     /**
+     * Gets the raw model to build. If not set, model source will be used to load raw model.
+     * 
+     * @return The raw model to build or {@code null} if not set.
+     */
+    Model getRawModel();
+
+    /**
+     * Set raw model.
+     *
+     * @param model
+     */
+    ModelBuildingRequest setRawModel( Model rawModel );
+
+    /**
      * Gets the source of the POM to process.
      *
      * @return The source of the POM or {@code null} if not set.
@@ -315,4 +331,8 @@ public interface ModelBuildingRequest
      */
     ModelBuildingRequest setModelCache( ModelCache modelCache );
 
-}
+    WorkspaceModelResolver getWorkspaceModelResolver();
+
+    ModelBuildingRequest setWorkspaceModelResolver( WorkspaceModelResolver workspaceResolver );
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-model-builder/src/main/java/org/apache/maven/model/building/Result.java
----------------------------------------------------------------------
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/building/Result.java b/maven-model-builder/src/main/java/org/apache/maven/model/building/Result.java
new file mode 100644
index 0000000..a962897
--- /dev/null
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/building/Result.java
@@ -0,0 +1,255 @@
+package org.apache.maven.model.building;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import static com.google.common.base.Predicates.in;
+import static com.google.common.collect.Iterables.any;
+import static com.google.common.collect.Iterables.concat;
+import static com.google.common.collect.Iterables.transform;
+import static java.util.Collections.singleton;
+import static java.util.EnumSet.of;
+import static org.apache.maven.model.building.ModelProblem.Severity.ERROR;
+import static org.apache.maven.model.building.ModelProblem.Severity.FATAL;
+
+import java.util.Arrays;
+import java.util.Collections;
+
+import org.apache.maven.model.building.ModelProblem.Severity;
+
+import com.google.common.base.Function;
+import com.google.common.base.Predicates;
+import com.google.common.collect.Iterables;
+
+/**
+ * There are various forms of results that are represented by this class:
+ * <ol>
+ * <li>success - in which case only the model field is set
+ * <li>success with warnings - model field + non-error model problems
+ * <li>error - no model, but diagnostics
+ * <li>error - (partial) model and diagnostics
+ * </ol>
+ * Could encode these variants as subclasses, but kept in one for now
+ * 
+ * @author bbusjaeger
+ * @param <T>
+ */
+public class Result<T>
+{
+
+    /**
+     * Success without warnings
+     * 
+     * @param model
+     * @return
+     */
+    public static <T> Result<T> success( T model )
+    {
+        return success( model, Collections.<ModelProblem>emptyList() );
+    }
+
+    /**
+     * Success with warnings
+     * 
+     * @param model
+     * @param problems
+     * @return
+     */
+    public static <T> Result<T> success( T model, Iterable<? extends ModelProblem> problems )
+    {
+        assert !hasErrors( problems );
+        return new Result<T>( false, model, problems );
+    }
+
+    /**
+     * Success with warnings
+     * 
+     * @param model
+     * @param results
+     * @return
+     */
+    public static <T> Result<T> success( T model, Result<?>... results )
+    {
+        return success( model, Iterables.concat( Iterables.transform( Arrays.asList( results ), GET_PROBLEMS ) ) );
+    }
+
+    /**
+     * Error with problems describing the cause
+     *
+     * @param problems
+     * @return
+     */
+    public static <T> Result<T> error( Iterable<? extends ModelProblem> problems )
+    {
+        return error( null, problems );
+    }
+
+    public static <T> Result<T> error( T model )
+    {
+        return error( model, Collections.<ModelProblem>emptyList() );
+    }
+
+    public static <T> Result<T> error( Result<?> result )
+    {
+        return error( result.getProblems() );
+    }
+
+    public static <T> Result<T> error( Result<?>... results )
+    {
+        return error( Iterables.concat( Iterables.transform( Arrays.asList( results ), GET_PROBLEMS ) ) );
+    }
+
+    /**
+     * Error with partial result and problems describing the cause
+     *
+     * @param model
+     * @param problems
+     * @return
+     */
+    public static <T> Result<T> error( T model, Iterable<? extends ModelProblem> problems )
+    {
+        return new Result<T>( true, model, problems );
+    }
+
+    /**
+     * New result - determine whether error or success by checking problems for errors
+     * 
+     * @param model
+     * @param problems
+     * @return
+     */
+    public static <T> Result<T> newResult( T model, Iterable<? extends ModelProblem> problems )
+    {
+        return new Result<T>( hasErrors( problems ), model, problems );
+    }
+
+    /**
+     * New result consisting of given result and new problem. Convenience for newResult(result.get(),
+     * concat(result.getProblems(),problems)).
+     * 
+     * @param result
+     * @param problem
+     * @return
+     */
+    public static <T> Result<T> addProblem( Result<T> result, ModelProblem problem )
+    {
+        return addProblems( result, singleton( problem ) );
+    }
+
+    /**
+     * New result that includes the given
+     *
+     * @param result
+     * @param problems
+     * @return
+     */
+    public static <T> Result<T> addProblems( Result<T> result, Iterable<? extends ModelProblem> problems )
+    {
+        return new Result<T>( result.hasErrors() || hasErrors( problems ), result.get(), concat( result.getProblems(),
+                                                                                                 problems ) );
+    }
+
+    public static <T> Result<T> addProblems( Result<T> result, Result<?>... results )
+    {
+        return addProblems( result, Iterables.concat( Iterables.transform( Arrays.asList( results ), GET_PROBLEMS ) ) );
+    }
+
+    /**
+     * Turns the given results into a single result by combining problems and models into single collection.
+     * 
+     * @param results
+     * @return
+     */
+    public static <T> Result<Iterable<T>> newResultSet( Iterable<? extends Result<? extends T>> results )
+    {
+        final boolean hasErrors = any( transform( results, new Function<Result<?>, Boolean>()
+        {
+            @Override
+            public Boolean apply( Result<?> input )
+            {
+                return input.hasErrors();
+            }
+        } ), Predicates.equalTo( true ) );
+        final Iterable<T> models = transform( results, new Function<Result<? extends T>, T>()
+        {
+            @Override
+            public T apply( Result<? extends T> input )
+            {
+                return input.get();
+            }
+        } );
+        final Iterable<ModelProblem> problems = concat( transform( results, GET_PROBLEMS ) );
+        return new Result<Iterable<T>>( hasErrors, models, problems );
+    }
+
+    // helper to determine if problems contain error
+    private static boolean hasErrors( Iterable<? extends ModelProblem> problems )
+    {
+        return any( transform( problems, new Function<ModelProblem, Severity>()
+        {
+            @Override
+            public Severity apply( ModelProblem input )
+            {
+                return input.getSeverity();
+            }
+        } ), in( of( ERROR, FATAL ) ) );
+    }
+
+    /**
+     * Class definition
+     */
+
+    private final boolean errors;
+
+    private final T value;
+
+    private final Iterable<? extends ModelProblem> problems;
+
+    private Result( boolean errors, T model, Iterable<? extends ModelProblem> problems )
+    {
+        this.errors = errors;
+        this.value = model;
+        this.problems = problems;
+    }
+
+    public Iterable<? extends ModelProblem> getProblems()
+    {
+        return problems;
+    }
+
+    public T get()
+    {
+        return value;
+    }
+
+    public boolean hasErrors()
+    {
+        return errors;
+    }
+
+    private static final Function<Result<?>, Iterable<? extends ModelProblem>> GET_PROBLEMS =
+        new Function<Result<?>, Iterable<? extends ModelProblem>>()
+        {
+            @Override
+            public Iterable<? extends ModelProblem> apply( Result<?> input )
+            {
+                return input.getProblems();
+            }
+        };
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-model-builder/src/main/java/org/apache/maven/model/resolution/UnresolvableModelException.java
----------------------------------------------------------------------
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/resolution/UnresolvableModelException.java b/maven-model-builder/src/main/java/org/apache/maven/model/resolution/UnresolvableModelException.java
index 733a276..bdb623a 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/resolution/UnresolvableModelException.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/resolution/UnresolvableModelException.java
@@ -78,6 +78,22 @@ public class UnresolvableModelException
     }
 
     /**
+     * Creates a new exception with specified cause
+     *
+     * @param cause
+     * @param groupId
+     * @param artifactId
+     * @param version
+     */
+    public UnresolvableModelException( Throwable cause, String groupId, String artifactId, String version )
+    {
+        super( cause );
+        this.groupId = groupId;
+        this.artifactId = artifactId;
+        this.version = version;
+    }
+
+    /**
      * Gets the group id of the unresolvable model.
      *
      * @return The group id of the unresolvable model, can be empty but never {@code null}.

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-model-builder/src/main/java/org/apache/maven/model/resolution/WorkspaceModelResolver.java
----------------------------------------------------------------------
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/resolution/WorkspaceModelResolver.java b/maven-model-builder/src/main/java/org/apache/maven/model/resolution/WorkspaceModelResolver.java
new file mode 100644
index 0000000..d12edea
--- /dev/null
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/resolution/WorkspaceModelResolver.java
@@ -0,0 +1,33 @@
+package org.apache.maven.model.resolution;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.maven.model.Model;
+
+public interface WorkspaceModelResolver
+{
+
+    Model resolveRawModel( String groupId, String artifactId, String versionConstraint )
+        throws UnresolvableModelException;
+
+    Model resolveEffectiveModel( String groupId, String artifactId, String versionConstraint )
+        throws UnresolvableModelException;
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-model/src/main/mdo/maven.mdo
----------------------------------------------------------------------
diff --git a/maven-model/src/main/mdo/maven.mdo b/maven-model/src/main/mdo/maven.mdo
index 43bdb7e..2821ea6 100644
--- a/maven-model/src/main/mdo/maven.mdo
+++ b/maven-model/src/main/mdo/maven.mdo
@@ -1466,12 +1466,18 @@
           <version>4.0.0+</version>
           <code>
             <![CDATA[
+    private String managementKey;
+
     /**
      * @return the management key as <code>groupId:artifactId:type</code>
      */
     public String getManagementKey()
     {
-        return groupId + ":" + artifactId + ":" + type + ( classifier != null ? ":" + classifier : "" );
+        if ( managementKey == null )
+        {
+            managementKey = groupId + ":" + artifactId + ":" + type + ( classifier != null ? ":" + classifier : "" );
+        }
+        return managementKey;
     }
             ]]>
           </code>


[06/50] [abbrv] maven git commit: MNG-5771 user-defined core extensions

Posted by ah...@apache.org.
MNG-5771 user-defined core extensions

read ${maven.projectBasedir}/.mvn/extensions.xml and create core
extensions realms during maven runtime bootstrap. this required
short-lived bootstrap plexus container to resolve extensions.

individual extensions realms are wired to maven.ext realm according
to META-INF/maven/extension.xml exported packages specification

Signed-off-by: Igor Fedorenko <if...@apache.org>


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

Branch: refs/heads/slf4j-log4j2
Commit: 6efacdb3fc5e8369fa3586c0603184dc785303da
Parents: e2a0792
Author: Igor Fedorenko <if...@apache.org>
Authored: Sat Feb 14 09:59:02 2015 -0500
Committer: Igor Fedorenko <if...@apache.org>
Committed: Fri Feb 20 14:05:54 2015 -0500

----------------------------------------------------------------------
 .../maven/DefaultArtifactFilterManager.java     |  26 +-
 .../classrealm/DefaultClassRealmManager.java    |  45 +---
 .../maven/extension/internal/CoreExports.java   |  75 ++++++
 .../extension/internal/CoreExportsProvider.java |  53 ++++
 .../extension/internal/CoreExtensionEntry.java  | 141 +++++++++++
 .../extension/internal/DefaultCoreExports.java  |  97 --------
 .../DefaultPluginDependenciesResolver.java      |  33 ++-
 maven-embedder/pom.xml                          |  14 ++
 .../java/org/apache/maven/cli/MavenCli.java     | 246 ++++++++++++++++---
 .../internal/BootstrapCoreExtensionManager.java | 143 +++++++++++
 maven-embedder/src/main/mdo/core-extensions.mdo |  74 ++++++
 11 files changed, 765 insertions(+), 182 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/6efacdb3/maven-core/src/main/java/org/apache/maven/DefaultArtifactFilterManager.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/DefaultArtifactFilterManager.java b/maven-core/src/main/java/org/apache/maven/DefaultArtifactFilterManager.java
index 80bfd62..46f8af0 100644
--- a/maven-core/src/main/java/org/apache/maven/DefaultArtifactFilterManager.java
+++ b/maven-core/src/main/java/org/apache/maven/DefaultArtifactFilterManager.java
@@ -29,9 +29,7 @@ import javax.inject.Singleton;
 
 import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
 import org.apache.maven.artifact.resolver.filter.ExclusionSetFilter;
-import org.apache.maven.extension.internal.DefaultCoreExports;
-
-import com.google.common.collect.ImmutableSet;
+import org.apache.maven.extension.internal.CoreExportsProvider;
 
 /**
  * @author Jason van Zyl
@@ -46,16 +44,24 @@ public class DefaultArtifactFilterManager
     // this is a live injected collection
     protected final List<ArtifactFilterManagerDelegate> delegates;
 
-    protected final Set<String> coreArtifacts;
+    protected Set<String> excludedArtifacts;
 
-    protected final Set<String> excludedArtifacts;
+    private final Set<String> coreArtifacts;
 
     @Inject
-    public DefaultArtifactFilterManager( List<ArtifactFilterManagerDelegate> delegates, DefaultCoreExports extensions )
+    public DefaultArtifactFilterManager( List<ArtifactFilterManagerDelegate> delegates, CoreExportsProvider coreExports )
     {
         this.delegates = delegates;
-        this.coreArtifacts = ImmutableSet.copyOf( extensions.getExportedArtifacts() );
-        this.excludedArtifacts = new LinkedHashSet<String>( extensions.getExportedArtifacts() );
+        this.coreArtifacts = coreExports.get().getExportedArtifacts();
+    }
+
+    private synchronized Set<String> getExcludedArtifacts()
+    {
+        if ( excludedArtifacts == null )
+        {
+            excludedArtifacts = new LinkedHashSet<String>( coreArtifacts );
+        }
+        return excludedArtifacts;
     }
 
     /**
@@ -65,7 +71,7 @@ public class DefaultArtifactFilterManager
      */
     public ArtifactFilter getArtifactFilter()
     {
-        Set<String> excludes = new LinkedHashSet<String>( excludedArtifacts );
+        Set<String> excludes = new LinkedHashSet<String>( getExcludedArtifacts() );
 
         for ( ArtifactFilterManagerDelegate delegate : delegates )
         {
@@ -87,7 +93,7 @@ public class DefaultArtifactFilterManager
 
     public void excludeArtifact( String artifactId )
     {
-        excludedArtifacts.add( artifactId );
+        getExcludedArtifacts().add( artifactId );
     }
 
     public Set<String> getCoreArtifactExcludes()

http://git-wip-us.apache.org/repos/asf/maven/blob/6efacdb3/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java b/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java
index 206fa58..ab9607a 100644
--- a/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java
+++ b/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java
@@ -23,7 +23,6 @@ import java.io.File;
 import java.net.MalformedURLException;
 import java.util.ArrayList;
 import java.util.Collections;
-import java.util.HashMap;
 import java.util.LinkedHashSet;
 import java.util.List;
 import java.util.Map;
@@ -37,7 +36,7 @@ import javax.inject.Singleton;
 
 import org.apache.maven.artifact.ArtifactUtils;
 import org.apache.maven.classrealm.ClassRealmRequest.RealmType;
-import org.apache.maven.extension.internal.DefaultCoreExports;
+import org.apache.maven.extension.internal.CoreExportsProvider;
 import org.apache.maven.model.Model;
 import org.apache.maven.model.Plugin;
 import org.codehaus.plexus.MutablePlexusContainer;
@@ -49,8 +48,6 @@ import org.codehaus.plexus.logging.Logger;
 import org.codehaus.plexus.util.StringUtils;
 import org.eclipse.aether.artifact.Artifact;
 
-import com.google.common.collect.ImmutableMap;
-
 /**
  * Manages the class realms used by Maven. <strong>Warning:</strong> This is an internal utility class that is only
  * public for technical reasons, it is not part of the public API. In particular, this class can be changed or deleted
@@ -63,6 +60,7 @@ import com.google.common.collect.ImmutableMap;
 public class DefaultClassRealmManager
     implements ClassRealmManager
 {
+    public static final String API_REALMID = "maven.api";
 
     /**
      * During normal command line build, ClassWorld is loaded by jvm system classloader, which only includes
@@ -83,25 +81,22 @@ public class DefaultClassRealmManager
     // this is a live injected collection
     private final List<ClassRealmManagerDelegate> delegates;
 
-    private final Map<String, ClassLoader> coreImports;
-
-    private ClassRealm mavenRealm;
+    private final ClassRealm mavenApiRealm;
 
     @Inject
     public DefaultClassRealmManager( Logger logger, PlexusContainer container,
-                                     List<ClassRealmManagerDelegate> delegates, DefaultCoreExports coreExtensions )
+                                     List<ClassRealmManagerDelegate> delegates, CoreExportsProvider exports )
     {
         this.logger = logger;
         this.world = ( (MutablePlexusContainer) container ).getClassWorld();
         this.containerRealm = container.getContainerRealm();
         this.delegates = delegates;
 
-        Map<String, ClassLoader> coreImports = new HashMap<String, ClassLoader>();
-        for ( String corePackage : coreExtensions.getExportedPackages() )
-        {
-            coreImports.put( corePackage, containerRealm );
-        }
-        this.coreImports = ImmutableMap.copyOf( coreImports );
+        Map<String, ClassLoader> foreignImports = exports.get().getExportedPackages();
+
+        this.mavenApiRealm =
+            createRealm( API_REALMID, RealmType.Core, null /* parent */, null /* parentImports */, 
+                         foreignImports, null /* artifacts */ );
     }
 
     private ClassRealm newRealm( String id )
@@ -133,27 +128,9 @@ public class DefaultClassRealmManager
         }
     }
 
-    public synchronized ClassRealm getMavenApiRealm()
+    public ClassRealm getMavenApiRealm()
     {
-        if ( mavenRealm == null )
-        {
-            mavenRealm = newRealm( "maven.api" );
-
-            List<ClassRealmConstituent> constituents = new ArrayList<ClassRealmConstituent>();
-
-            List<String> parentImports = new ArrayList<String>();
-
-            Map<String, ClassLoader> foreignImports = new HashMap<String, ClassLoader>( coreImports );
-
-            callDelegates( mavenRealm, RealmType.Core, mavenRealm.getParentClassLoader(), parentImports,
-                           foreignImports, constituents );
-
-            wireRealm( mavenRealm, parentImports, foreignImports );
-
-            populateRealm( mavenRealm, constituents );
-        }
-
-        return mavenRealm;
+        return mavenApiRealm;
     }
 
     /**

http://git-wip-us.apache.org/repos/asf/maven/blob/6efacdb3/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExports.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExports.java b/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExports.java
new file mode 100644
index 0000000..f1fa9e3
--- /dev/null
+++ b/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExports.java
@@ -0,0 +1,75 @@
+package org.apache.maven.extension.internal;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+import java.util.Set;
+
+import org.codehaus.plexus.classworlds.realm.ClassRealm;
+
+import com.google.common.collect.ImmutableMap;
+import com.google.common.collect.ImmutableSet;
+
+/**
+ * Provides information about artifacts (identified by groupId:artifactId string key) and classpath elements exported by
+ * Maven core itself and loaded Maven core extensions.
+ * 
+ * @since 3.2.6
+ */
+public class CoreExports
+{
+    private final Set<String> artifacts;
+
+    private final Map<String, ClassLoader> packages;
+
+    public CoreExports( CoreExtensionEntry entry )
+    {
+        this( entry.getClassRealm(), entry.getExportedArtifacts(), entry.getExportedPackages() );
+    }
+
+    public CoreExports( ClassRealm realm, Set<String> exportedArtifacts, Set<String> exportedPackages )
+    {
+        Map<String, ClassLoader> packages = new LinkedHashMap<String, ClassLoader>();
+        for ( String pkg : exportedPackages )
+        {
+            packages.put( pkg, realm );
+        }
+        this.artifacts = ImmutableSet.copyOf( exportedArtifacts );
+        this.packages = ImmutableMap.copyOf( packages );
+    }
+
+    /**
+     * Returns artifacts exported by Maven core and core extensions. Artifacts are identified by their
+     * groupId:artifactId string key.
+     */
+    public Set<String> getExportedArtifacts()
+    {
+        return artifacts;
+    }
+
+    /**
+     * Returns packages exported by Maven core and core extensions.
+     */
+    public Map<String, ClassLoader> getExportedPackages()
+    {
+        return packages;
+    }
+}

http://git-wip-us.apache.org/repos/asf/maven/blob/6efacdb3/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExportsProvider.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExportsProvider.java b/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExportsProvider.java
new file mode 100644
index 0000000..e7e4534
--- /dev/null
+++ b/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExportsProvider.java
@@ -0,0 +1,53 @@
+package org.apache.maven.extension.internal;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import javax.inject.Inject;
+import javax.inject.Named;
+import javax.inject.Singleton;
+
+import org.codehaus.plexus.PlexusContainer;
+import org.eclipse.sisu.Nullable;
+
+@Named
+@Singleton
+public class CoreExportsProvider
+{
+
+    private final CoreExports exports;
+
+    @Inject
+    public CoreExportsProvider( PlexusContainer container, @Nullable CoreExports exports )
+    {
+        if ( exports == null )
+        {
+            this.exports = new CoreExports( CoreExtensionEntry.discoverFrom( container.getContainerRealm() ) );
+        }
+        else
+        {
+            this.exports = exports;
+        }
+    }
+
+    public CoreExports get()
+    {
+        return exports;
+    }
+}

http://git-wip-us.apache.org/repos/asf/maven/blob/6efacdb3/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExtensionEntry.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExtensionEntry.java b/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExtensionEntry.java
new file mode 100644
index 0000000..d74c390
--- /dev/null
+++ b/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExtensionEntry.java
@@ -0,0 +1,141 @@
+package org.apache.maven.extension.internal;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URL;
+import java.util.Collection;
+import java.util.Enumeration;
+import java.util.LinkedHashSet;
+import java.util.Set;
+
+import org.apache.maven.project.ExtensionDescriptor;
+import org.apache.maven.project.ExtensionDescriptorBuilder;
+import org.codehaus.plexus.classworlds.realm.ClassRealm;
+import org.codehaus.plexus.util.IOUtil;
+
+import com.google.common.collect.ImmutableSet;
+
+/**
+ * Provides information about artifacts (identified by groupId:artifactId string key) and classpath elements exported by
+ * Maven core itself or a Maven core extension.
+ * 
+ * @since 3.2.6
+ */
+public class CoreExtensionEntry
+{
+    private final ClassRealm realm;
+
+    private final Set<String> artifacts;
+
+    private final Set<String> packages;
+
+    public CoreExtensionEntry( ClassRealm realm, Collection<String> artifacts, Collection<String> packages )
+    {
+        this.realm = realm;
+        this.artifacts = ImmutableSet.copyOf( artifacts );
+        this.packages = ImmutableSet.copyOf( packages );
+    }
+
+    /**
+     * Returns ClassLoader used to load extension classes.
+     */
+    public ClassRealm getClassRealm()
+    {
+        return realm;
+    }
+
+    /**
+     * Returns artifacts exported by the extension, identified by groupId:artifactId string key.
+     */
+    public Set<String> getExportedArtifacts()
+    {
+        return artifacts;
+    }
+
+    /**
+     * Returns classpath elements exported by the extension.
+     */
+    public Set<String> getExportedPackages()
+    {
+        return packages;
+    }
+
+    private static final ExtensionDescriptorBuilder builder = new ExtensionDescriptorBuilder();
+
+    public static CoreExtensionEntry discoverFrom( ClassRealm loader )
+    {
+        Set<String> artifacts = new LinkedHashSet<String>();
+        Set<String> packages = new LinkedHashSet<String>();
+
+        try
+        {
+            Enumeration<URL> urls = loader.getResources( builder.getExtensionDescriptorLocation() );
+            while ( urls.hasMoreElements() )
+            {
+                InputStream is = urls.nextElement().openStream();
+                try
+                {
+                    ExtensionDescriptor descriptor = builder.build( is );
+                    artifacts.addAll( descriptor.getExportedArtifacts() );
+                    packages.addAll( descriptor.getExportedPackages() );
+                }
+                finally
+                {
+                    IOUtil.close( is );
+                }
+            }
+        }
+        catch ( IOException ignored )
+        {
+            // exports descriptors are entirely optional
+        }
+
+        return new CoreExtensionEntry( loader, artifacts, packages );
+    }
+
+    public static CoreExtensionEntry discoverFrom( ClassRealm loader, Collection<File> classpath )
+    {
+        Set<String> artifacts = new LinkedHashSet<String>();
+        Set<String> packages = new LinkedHashSet<String>();
+
+        try
+        {
+            for ( File entry : classpath )
+            {
+                ExtensionDescriptor descriptor = builder.build( entry );
+                if ( descriptor != null )
+                {
+                    artifacts.addAll( descriptor.getExportedArtifacts() );
+                    packages.addAll( descriptor.getExportedPackages() );
+                }
+            }
+        }
+        catch ( IOException ignored )
+        {
+            // exports descriptors are entirely optional
+        }
+
+        return new CoreExtensionEntry( loader, artifacts, packages );
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/maven/blob/6efacdb3/maven-core/src/main/java/org/apache/maven/extension/internal/DefaultCoreExports.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/extension/internal/DefaultCoreExports.java b/maven-core/src/main/java/org/apache/maven/extension/internal/DefaultCoreExports.java
deleted file mode 100644
index c4253ee..0000000
--- a/maven-core/src/main/java/org/apache/maven/extension/internal/DefaultCoreExports.java
+++ /dev/null
@@ -1,97 +0,0 @@
-package org.apache.maven.extension.internal;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URL;
-import java.util.Enumeration;
-import java.util.LinkedHashSet;
-import java.util.Set;
-
-import javax.inject.Inject;
-import javax.inject.Named;
-import javax.inject.Singleton;
-
-import org.apache.maven.project.ExtensionDescriptor;
-import org.apache.maven.project.ExtensionDescriptorBuilder;
-import org.codehaus.plexus.PlexusContainer;
-import org.codehaus.plexus.util.IOUtil;
-
-import com.google.common.collect.ImmutableSet;
-
-/**
- * @since 3.2.6
- */
-@Named
-@Singleton
-public class DefaultCoreExports
-{
-    private static final ExtensionDescriptorBuilder builder = new ExtensionDescriptorBuilder();
-
-    private final Set<String> artifacts;
-
-    private final Set<String> packages;
-
-    @Inject
-    public DefaultCoreExports( PlexusContainer container )
-        throws IOException
-    {
-        Set<String> artifacts = new LinkedHashSet<String>();
-        Set<String> packages = new LinkedHashSet<String>();
-
-        Enumeration<URL> extensions =
-            container.getContainerRealm().getResources( builder.getExtensionDescriptorLocation() );
-        while ( extensions.hasMoreElements() )
-        {
-            InputStream is = extensions.nextElement().openStream();
-            try
-            {
-                ExtensionDescriptor descriptor = builder.build( is );
-
-                artifacts.addAll( descriptor.getExportedArtifacts() );
-                packages.addAll( descriptor.getExportedPackages() );
-            }
-            finally
-            {
-                IOUtil.close( is );
-            }
-        }
-        this.artifacts = ImmutableSet.copyOf( artifacts );
-        this.packages = ImmutableSet.copyOf( packages );
-    }
-
-    /**
-     * Returns artifacts exported by Maven core and core extensions. Artifacts are identified by their
-     * groupId:artifactId.
-     */
-    public Set<String> getExportedArtifacts()
-    {
-        return artifacts;
-    }
-
-    /**
-     * Returns packages exported by Maven core and core extensions.
-     */
-    public Set<String> getExportedPackages()
-    {
-        return packages;
-    }
-}

http://git-wip-us.apache.org/repos/asf/maven/blob/6efacdb3/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
index 5a0edf5..885c8ec 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
@@ -136,10 +136,32 @@ public class DefaultPluginDependenciesResolver
         return pluginArtifact;
     }
 
+    /**
+     * @since 3.2.6
+     */
+    public DependencyNode resolveCoreExtension( Plugin plugin, DependencyFilter dependencyFilter,
+                                                List<RemoteRepository> repositories, RepositorySystemSession session )
+        throws PluginResolutionException
+    {
+        return resolveInternal( plugin, null /* pluginArtifact */, dependencyFilter, null /* transformer */,
+                                repositories, session );
+    }
+
     public DependencyNode resolve( Plugin plugin, Artifact pluginArtifact, DependencyFilter dependencyFilter,
                                    List<RemoteRepository> repositories, RepositorySystemSession session )
         throws PluginResolutionException
     {
+        DependencyFilter resolutionFilter =
+            new ExclusionsDependencyFilter( artifactFilterManager.getCoreArtifactExcludes() );
+        resolutionFilter = AndDependencyFilter.newInstance( resolutionFilter, dependencyFilter );
+        return resolveInternal( plugin, pluginArtifact, resolutionFilter, new PlexusUtilsInjector(), repositories, session );
+    }
+
+    private DependencyNode resolveInternal( Plugin plugin, Artifact pluginArtifact, DependencyFilter dependencyFilter,
+                                            DependencyGraphTransformer transformer,
+                                            List<RemoteRepository> repositories, RepositorySystemSession session )
+        throws PluginResolutionException
+    {
         RequestTrace trace = RequestTrace.newChild( null, plugin );
 
         if ( pluginArtifact == null )
@@ -148,11 +170,7 @@ public class DefaultPluginDependenciesResolver
         }
 
         DependencyFilter collectionFilter = new ScopeDependencyFilter( "provided", "test" );
-
-        DependencyFilter resolutionFilter =
-            new ExclusionsDependencyFilter( artifactFilterManager.getCoreArtifactExcludes() );
-        resolutionFilter = AndDependencyFilter.newInstance( resolutionFilter, dependencyFilter );
-        resolutionFilter = new AndDependencyFilter( collectionFilter, resolutionFilter );
+        DependencyFilter resolutionFilter = AndDependencyFilter.newInstance( collectionFilter, dependencyFilter );
 
         DependencyNode node;
 
@@ -161,9 +179,8 @@ public class DefaultPluginDependenciesResolver
             DependencySelector selector =
                 AndDependencySelector.newInstance( session.getDependencySelector(), new WagonExcluder() );
 
-            DependencyGraphTransformer transformer =
-                ChainedDependencyGraphTransformer.newInstance( session.getDependencyGraphTransformer(),
-                                                               new PlexusUtilsInjector() );
+            transformer =
+                ChainedDependencyGraphTransformer.newInstance( session.getDependencyGraphTransformer(), transformer );
 
             DefaultRepositorySystemSession pluginSession = new DefaultRepositorySystemSession( session );
             pluginSession.setDependencySelector( selector );

http://git-wip-us.apache.org/repos/asf/maven/blob/6efacdb3/maven-embedder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-embedder/pom.xml b/maven-embedder/pom.xml
index cd3f583..2dc5fde 100644
--- a/maven-embedder/pom.xml
+++ b/maven-embedder/pom.xml
@@ -122,9 +122,23 @@
     </pluginManagement>
     <plugins>
       <plugin>
+        <groupId>org.eclipse.sisu</groupId>
+        <artifactId>sisu-maven-plugin</artifactId>
+      </plugin>
+      <plugin>
         <groupId>org.codehaus.plexus</groupId>
         <artifactId>plexus-component-metadata</artifactId>
       </plugin>
+      <plugin>
+        <groupId>org.codehaus.modello</groupId>
+        <artifactId>modello-maven-plugin</artifactId>
+        <configuration>
+          <version>1.0.0</version>
+          <models>
+            <model>src/main/mdo/core-extensions.mdo</model>
+          </models>
+        </configuration>
+      </plugin>
     </plugins>
   </build>
 </project>

http://git-wip-us.apache.org/repos/asf/maven/blob/6efacdb3/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java b/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
index 3878dae..1c2ffc0 100644
--- a/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
+++ b/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
@@ -19,11 +19,14 @@ package org.apache.maven.cli;
  * under the License.
  */
 
+import java.io.BufferedInputStream;
 import java.io.Console;
 import java.io.File;
+import java.io.FileInputStream;
 import java.io.FileNotFoundException;
 import java.io.FileOutputStream;
 import java.io.IOException;
+import java.io.InputStream;
 import java.io.PrintStream;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -47,6 +50,9 @@ import org.apache.maven.building.Problem;
 import org.apache.maven.building.Source;
 import org.apache.maven.cli.event.DefaultEventSpyContext;
 import org.apache.maven.cli.event.ExecutionEventLogger;
+import org.apache.maven.cli.internal.BootstrapCoreExtensionManager;
+import org.apache.maven.cli.internal.extension.model.CoreExtension;
+import org.apache.maven.cli.internal.extension.model.io.xpp3.CoreExtensionsXpp3Reader;
 import org.apache.maven.cli.logging.Slf4jConfiguration;
 import org.apache.maven.cli.logging.Slf4jConfigurationFactory;
 import org.apache.maven.cli.logging.Slf4jLoggerManager;
@@ -64,6 +70,8 @@ import org.apache.maven.execution.MavenExecutionRequest;
 import org.apache.maven.execution.MavenExecutionRequestPopulationException;
 import org.apache.maven.execution.MavenExecutionRequestPopulator;
 import org.apache.maven.execution.MavenExecutionResult;
+import org.apache.maven.extension.internal.CoreExports;
+import org.apache.maven.extension.internal.CoreExtensionEntry;
 import org.apache.maven.lifecycle.LifecycleExecutionException;
 import org.apache.maven.model.building.ModelProcessor;
 import org.apache.maven.project.MavenProject;
@@ -87,7 +95,9 @@ import org.codehaus.plexus.classworlds.realm.ClassRealm;
 import org.codehaus.plexus.classworlds.realm.NoSuchRealmException;
 import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
 import org.codehaus.plexus.logging.LoggerManager;
+import org.codehaus.plexus.util.IOUtil;
 import org.codehaus.plexus.util.StringUtils;
+import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
 import org.eclipse.aether.transfer.TransferListener;
 import org.slf4j.ILoggerFactory;
 import org.slf4j.Logger;
@@ -134,6 +144,8 @@ public class MavenCli
 
     private static final String EXT_CLASS_PATH = "maven.ext.class.path";
 
+    private static final String EXTENSIONS_FILENAME = ".mvn/extensions.xml";
+
     private ClassWorld classWorld;
 
     private LoggerManager plexusLoggerManager;
@@ -485,21 +497,44 @@ public class MavenCli
             cliRequest.classWorld = new ClassWorld( "plexus.core", Thread.currentThread().getContextClassLoader() );
         }
 
-        DefaultPlexusContainer container;
+        ClassRealm coreRealm = cliRequest.classWorld.getClassRealm( "plexus.core" );
+        if ( coreRealm == null )
+        {
+            coreRealm = cliRequest.classWorld.getRealms().iterator().next();
+        }
+
+        List<File> extClassPath = parseExtClasspath( cliRequest );
+
+        CoreExtensionEntry coreEntry = CoreExtensionEntry.discoverFrom( coreRealm );
+        List<CoreExtensionEntry> extensions =
+            loadCoreExtensions( cliRequest, coreRealm, coreEntry.getExportedArtifacts() );
+
+        ClassRealm containerRealm = setupContainerRealm( cliRequest.classWorld, coreRealm, extClassPath, extensions );
 
         ContainerConfiguration cc = new DefaultContainerConfiguration()
             .setClassWorld( cliRequest.classWorld )
-            .setRealm( setupContainerRealm( cliRequest ) )
+            .setRealm( containerRealm )
             .setClassPathScanning( PlexusConstants.SCANNING_INDEX )
             .setAutoWiring( true )
             .setName( "maven" );
 
-        container = new DefaultPlexusContainer( cc, new AbstractModule()
+        Set<String> exportedArtifacts = new HashSet<String>( coreEntry.getExportedArtifacts() );
+        Set<String> exportedPackages = new HashSet<String>( coreEntry.getExportedPackages() );
+        for ( CoreExtensionEntry extension : extensions )
+        {
+            exportedArtifacts.addAll( extension.getExportedArtifacts() );
+            exportedPackages.addAll( extension.getExportedPackages() );
+        }
+
+        final CoreExports exports = new CoreExports( containerRealm, exportedArtifacts, exportedPackages );
+
+        DefaultPlexusContainer container = new DefaultPlexusContainer( cc, new AbstractModule()
         {
             @Override
             protected void configure()
             {
                 bind( ILoggerFactory.class ).toInstance( slf4jLoggerFactory );
+                bind( CoreExports.class ).toInstance( exports );
             }
         } );
 
@@ -508,6 +543,11 @@ public class MavenCli
 
         container.setLoggerManager( plexusLoggerManager );
 
+        for ( CoreExtensionEntry extension : extensions )
+        {
+            container.discoverComponents( extension.getClassRealm() );
+        }
+
         customizeContainer( container );
 
         container.getLoggerManager().setThresholds( cliRequest.request.getLoggingLevel() );
@@ -543,49 +583,170 @@ public class MavenCli
         return container;
     }
 
-    private ClassRealm setupContainerRealm( CliRequest cliRequest )
-        throws Exception
+    private List<CoreExtensionEntry> loadCoreExtensions( CliRequest cliRequest, ClassRealm containerRealm,
+                                                         Set<String> providedArtifacts )
     {
-        ClassRealm containerRealm = null;
+        if ( cliRequest.projectBaseDirectory == null )
+        {
+            return Collections.emptyList();
+        }
 
-        String extClassPath = cliRequest.userProperties.getProperty( EXT_CLASS_PATH );
-        if ( extClassPath == null )
+        File extensionsFile = new File( cliRequest.projectBaseDirectory, EXTENSIONS_FILENAME );
+        if ( !extensionsFile.isFile() )
         {
-            extClassPath = cliRequest.systemProperties.getProperty( EXT_CLASS_PATH );
+            return Collections.emptyList();
         }
 
-        if ( StringUtils.isNotEmpty( extClassPath ) )
+        try
         {
-            String[] jars = StringUtils.split( extClassPath, File.pathSeparator );
+            List<CoreExtension> extensions = readCoreExtensionsDescriptor( extensionsFile );
+            if ( extensions.isEmpty() )
+            {
+                return Collections.emptyList();
+            }
+
+            ContainerConfiguration cc = new DefaultContainerConfiguration() //
+                .setClassWorld( cliRequest.classWorld ) //
+                .setRealm( containerRealm ) //
+                .setClassPathScanning( PlexusConstants.SCANNING_INDEX ) //
+                .setAutoWiring( true ) //
+                .setName( "maven" );
 
-            if ( jars.length > 0 )
+            DefaultPlexusContainer container = new DefaultPlexusContainer( cc, new AbstractModule()
             {
-                ClassRealm coreRealm = cliRequest.classWorld.getClassRealm( "plexus.core" );
-                if ( coreRealm == null )
+                @Override
+                protected void configure()
                 {
-                    coreRealm = cliRequest.classWorld.getRealms().iterator().next();
+                    bind( ILoggerFactory.class ).toInstance( slf4jLoggerFactory );
                 }
+            } );
 
-                ClassRealm extRealm = cliRequest.classWorld.newRealm( "maven.ext", null );
+            try
+            {
+                container.setLookupRealm( null );
 
-                slf4jLogger.debug( "Populating class realm " + extRealm.getId() );
+                container.setLoggerManager( plexusLoggerManager );
 
-                for ( String jar : jars )
-                {
-                    File file = resolveFile( new File( jar ), cliRequest.workingDirectory );
+                container.getLoggerManager().setThresholds( cliRequest.request.getLoggingLevel() );
+
+                Thread.currentThread().setContextClassLoader( container.getContainerRealm() );
 
-                    slf4jLogger.debug( "  Included " + file );
+                executionRequestPopulator = container.lookup( MavenExecutionRequestPopulator.class );
+                settingsBuilder = container.lookup( SettingsBuilder.class );
 
-                    extRealm.addURL( file.toURI().toURL() );
+                MavenExecutionRequest request = DefaultMavenExecutionRequest.copy( cliRequest.request );
+                settings( cliRequest, request );
+                request = populateRequest( cliRequest, request );
+                request = executionRequestPopulator.populateDefaults( request );
+
+                BootstrapCoreExtensionManager resolver = container.lookup( BootstrapCoreExtensionManager.class );
+                return resolver.loadCoreExtensions( request, providedArtifacts, extensions );
+            }
+            finally
+            {
+                executionRequestPopulator = null;
+                settingsBuilder = null;
+                container.dispose();
+            }
+        }
+        catch ( RuntimeException e )
+        {
+            // runtime exceptions are most likely bugs in maven, let them bubble up to the user
+            throw e;
+        }
+        catch ( Exception e )
+        {
+            slf4jLogger.warn( "Failed to read extensions descriptor " + extensionsFile + ": " + e.getMessage() );
+        }
+        return Collections.emptyList();
+    }
+
+    private List<CoreExtension> readCoreExtensionsDescriptor( File extensionsFile )
+        throws IOException, XmlPullParserException
+    {
+        CoreExtensionsXpp3Reader parser = new CoreExtensionsXpp3Reader();
+        InputStream is = null;
+        try
+        {
+            is = new BufferedInputStream( new FileInputStream( extensionsFile ) );
+            return parser.read( is ).getExtensions();
+        }
+        finally
+        {
+            IOUtil.close( is );
+        }
+    }
+
+    private ClassRealm setupContainerRealm( ClassWorld classWorld, ClassRealm coreRealm, List<File> extClassPath,
+                                            List<CoreExtensionEntry> extensions )
+        throws Exception
+    {
+        if ( !extClassPath.isEmpty() || !extensions.isEmpty() )
+        {
+            ClassRealm extRealm = classWorld.newRealm( "maven.ext", null );
+
+            extRealm.setParentRealm( coreRealm );
+
+            slf4jLogger.debug( "Populating class realm " + extRealm.getId() );
+
+            for ( File file : extClassPath )
+            {
+                slf4jLogger.debug( "  Included " + file );
+
+                extRealm.addURL( file.toURI().toURL() );
+            }
+
+            for ( CoreExtensionEntry entry : reverse( extensions ) )
+            {
+                Set<String> exportedPackages = entry.getExportedPackages();
+                ClassRealm realm = entry.getClassRealm();
+                for ( String exportedPackage : exportedPackages )
+                {
+                    extRealm.importFrom( realm, exportedPackage );
                 }
+                if ( exportedPackages.isEmpty() )
+                {
+                    // sisu uses realm imports to establish component visibility
+                    extRealm.importFrom( realm, realm.getId() );
+                }
+            }
+
+            return extRealm;
+        }
+
+        return coreRealm;
+    }
 
-                extRealm.setParentRealm( coreRealm );
+    private static <T> List<T> reverse( List<T> list )
+    {
+        List<T> copy = new ArrayList<T>( list );
+        Collections.reverse( copy );
+        return copy;
+    }
 
-                containerRealm = extRealm;
+    private List<File> parseExtClasspath( CliRequest cliRequest )
+    {
+        String extClassPath = cliRequest.userProperties.getProperty( EXT_CLASS_PATH );
+        if ( extClassPath == null )
+        {
+            extClassPath = cliRequest.systemProperties.getProperty( EXT_CLASS_PATH );
+        }
+
+        List<File> jars = new ArrayList<File>();
+
+        if ( StringUtils.isNotEmpty( extClassPath ) )
+        {
+            for ( String jar : StringUtils.split( extClassPath, File.pathSeparator ) )
+            {
+                File file = resolveFile( new File( jar ), cliRequest.workingDirectory );
+
+                slf4jLogger.debug( "  Included " + file );
+
+                jars.add( file );
             }
         }
 
-        return containerRealm;
+        return jars;
     }
 
     //
@@ -814,6 +975,12 @@ public class MavenCli
     private void settings( CliRequest cliRequest )
         throws Exception
     {
+        settings( cliRequest, cliRequest.request );
+    }
+
+    private void settings( CliRequest cliRequest, MavenExecutionRequest request )
+        throws Exception
+    {
         File userSettingsFile;
 
         if ( cliRequest.commandLine.hasOption( CLIManager.ALTERNATE_USER_SETTINGS ) )
@@ -851,8 +1018,8 @@ public class MavenCli
             globalSettingsFile = DEFAULT_GLOBAL_SETTINGS_FILE;
         }
 
-        cliRequest.request.setGlobalSettingsFile( globalSettingsFile );
-        cliRequest.request.setUserSettingsFile( userSettingsFile );
+        request.setGlobalSettingsFile( globalSettingsFile );
+        request.setUserSettingsFile( userSettingsFile );
 
         SettingsBuildingRequest settingsRequest = new DefaultSettingsBuildingRequest();
         settingsRequest.setGlobalSettingsFile( globalSettingsFile );
@@ -860,7 +1027,10 @@ public class MavenCli
         settingsRequest.setSystemProperties( cliRequest.systemProperties );
         settingsRequest.setUserProperties( cliRequest.userProperties );
 
-        eventSpyDispatcher.onEvent( settingsRequest );
+        if ( eventSpyDispatcher != null )
+        {
+            eventSpyDispatcher.onEvent( settingsRequest );
+        }
 
         slf4jLogger.debug( "Reading global settings from "
             + getLocation( settingsRequest.getGlobalSettingsSource(),
@@ -870,9 +1040,12 @@ public class MavenCli
 
         SettingsBuildingResult settingsResult = settingsBuilder.build( settingsRequest );
 
-        eventSpyDispatcher.onEvent( settingsResult );
+        if ( eventSpyDispatcher != null )
+        {
+            eventSpyDispatcher.onEvent( settingsResult );
+        }
 
-        executionRequestPopulator.populateFromSettings( cliRequest.request, settingsResult.getEffectiveSettings() );
+        executionRequestPopulator.populateFromSettings( request, settingsResult.getEffectiveSettings() );
 
         if ( !settingsResult.getProblems().isEmpty() && slf4jLogger.isWarnEnabled() )
         {
@@ -982,7 +1155,11 @@ public class MavenCli
 
     private MavenExecutionRequest populateRequest( CliRequest cliRequest )
     {
-        MavenExecutionRequest request = cliRequest.request;
+        return populateRequest( cliRequest, cliRequest.request );
+    }
+
+    private MavenExecutionRequest populateRequest( CliRequest cliRequest, MavenExecutionRequest request )
+    {
         CommandLine commandLine = cliRequest.commandLine;
         String workingDirectory = cliRequest.workingDirectory;
         boolean quiet = cliRequest.quiet;
@@ -1127,7 +1304,10 @@ public class MavenCli
         }
 
         ExecutionListener executionListener = new ExecutionEventLogger();
-        executionListener = eventSpyDispatcher.chainListener( executionListener );
+        if ( eventSpyDispatcher != null )
+        {
+            executionListener = eventSpyDispatcher.chainListener( executionListener );
+        }
 
         String alternatePomFile = null;
         if ( commandLine.hasOption( CLIManager.ALTERNATE_POM_FILE ) )
@@ -1172,7 +1352,7 @@ public class MavenCli
 
             request.setPom( pom );
         }
-        else
+        else if ( modelProcessor != null )
         {
             File pom = modelProcessor.locatePom( baseDirectory );
 

http://git-wip-us.apache.org/repos/asf/maven/blob/6efacdb3/maven-embedder/src/main/java/org/apache/maven/cli/internal/BootstrapCoreExtensionManager.java
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/internal/BootstrapCoreExtensionManager.java b/maven-embedder/src/main/java/org/apache/maven/cli/internal/BootstrapCoreExtensionManager.java
new file mode 100644
index 0000000..a431bde
--- /dev/null
+++ b/maven-embedder/src/main/java/org/apache/maven/cli/internal/BootstrapCoreExtensionManager.java
@@ -0,0 +1,143 @@
+package org.apache.maven.cli.internal;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.Set;
+
+import javax.inject.Inject;
+import javax.inject.Named;
+
+import org.apache.maven.RepositoryUtils;
+import org.apache.maven.cli.internal.extension.model.CoreExtension;
+import org.apache.maven.execution.MavenExecutionRequest;
+import org.apache.maven.extension.internal.CoreExtensionEntry;
+import org.apache.maven.internal.aether.DefaultRepositorySystemSessionFactory;
+import org.apache.maven.model.Plugin;
+import org.apache.maven.plugin.PluginResolutionException;
+import org.apache.maven.plugin.internal.DefaultPluginDependenciesResolver;
+import org.codehaus.plexus.DefaultPlexusContainer;
+import org.codehaus.plexus.PlexusContainer;
+import org.codehaus.plexus.classworlds.ClassWorld;
+import org.codehaus.plexus.classworlds.realm.ClassRealm;
+import org.codehaus.plexus.logging.Logger;
+import org.eclipse.aether.RepositorySystemSession;
+import org.eclipse.aether.artifact.Artifact;
+import org.eclipse.aether.graph.DependencyFilter;
+import org.eclipse.aether.graph.DependencyNode;
+import org.eclipse.aether.repository.RemoteRepository;
+import org.eclipse.aether.util.filter.ExclusionsDependencyFilter;
+import org.eclipse.aether.util.graph.visitor.PreorderNodeListGenerator;
+
+@Named
+public class BootstrapCoreExtensionManager
+{
+    private final Logger log;
+
+    private final DefaultPluginDependenciesResolver pluginDependenciesResolver;
+
+    private final DefaultRepositorySystemSessionFactory repositorySystemSessionFactory;
+
+    private final ClassWorld classWorld;
+
+    private final ClassRealm parentRealm;
+
+    @Inject
+    public BootstrapCoreExtensionManager( Logger log, DefaultPluginDependenciesResolver pluginDependenciesResolver,
+                                          DefaultRepositorySystemSessionFactory repositorySystemSessionFactory,
+                                          PlexusContainer container )
+    {
+        this.log = log;
+        this.pluginDependenciesResolver = pluginDependenciesResolver;
+        this.repositorySystemSessionFactory = repositorySystemSessionFactory;
+        this.classWorld = ( (DefaultPlexusContainer) container ).getClassWorld();
+        this.parentRealm = container.getContainerRealm();
+    }
+
+    public List<CoreExtensionEntry> loadCoreExtensions( MavenExecutionRequest request, Set<String> providedArtifacts,
+                                                        List<CoreExtension> extensions )
+        throws Exception
+    {
+        RepositorySystemSession repoSession = repositorySystemSessionFactory.newRepositorySession( request );
+        List<RemoteRepository> repositories = RepositoryUtils.toRepos( request.getPluginArtifactRepositories() );
+
+        return resolveCoreExtensions( repoSession, repositories, providedArtifacts, extensions );
+    }
+
+    private List<CoreExtensionEntry> resolveCoreExtensions( RepositorySystemSession repoSession,
+                                                            List<RemoteRepository> repositories,
+                                                            Set<String> providedArtifacts,
+                                                            List<CoreExtension> configuration )
+        throws Exception
+    {
+        List<CoreExtensionEntry> extensions = new ArrayList<CoreExtensionEntry>();
+
+        DependencyFilter dependencyFilter = new ExclusionsDependencyFilter( providedArtifacts );
+
+        for ( CoreExtension extension : configuration )
+        {
+            List<Artifact> artifacts = resolveExtension( extension, repoSession, repositories, dependencyFilter );
+            if ( !artifacts.isEmpty() )
+            {
+                extensions.add( createExtension( extension, artifacts ) );
+            }
+        }
+
+        return Collections.unmodifiableList( extensions );
+    }
+
+    private CoreExtensionEntry createExtension( CoreExtension extension, List<Artifact> artifacts )
+        throws Exception
+    {
+        String realmId =
+            "coreExtension>" + extension.getGroupId() + ":" + extension.getArtifactId() + ":" + extension.getVersion();
+        ClassRealm realm = classWorld.newRealm( realmId, null );
+        log.debug( "Populating class realm " + realm.getId() );
+        realm.setParentRealm( parentRealm );
+        for ( Artifact artifact : artifacts )
+        {
+            File file = artifact.getFile();
+            log.debug( "  Included " + file );
+            realm.addURL( file.toURI().toURL() );
+        }
+        return CoreExtensionEntry.discoverFrom( realm, Collections.singleton( artifacts.get( 0 ).getFile() ) );
+    }
+
+    private List<Artifact> resolveExtension( CoreExtension extension, RepositorySystemSession repoSession,
+                                             List<RemoteRepository> repositories, DependencyFilter dependencyFilter )
+        throws PluginResolutionException
+    {
+        Plugin plugin = new Plugin();
+        plugin.setGroupId( extension.getGroupId() );
+        plugin.setArtifactId( extension.getArtifactId() );
+        plugin.setVersion( extension.getVersion() );
+
+        DependencyNode root =
+            pluginDependenciesResolver.resolveCoreExtension( plugin, dependencyFilter, repositories, repoSession );
+        PreorderNodeListGenerator nlg = new PreorderNodeListGenerator();
+        root.accept( nlg );
+        List<Artifact> artifacts = nlg.getArtifacts( false );
+
+        return artifacts;
+    }
+}

http://git-wip-us.apache.org/repos/asf/maven/blob/6efacdb3/maven-embedder/src/main/mdo/core-extensions.mdo
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/mdo/core-extensions.mdo b/maven-embedder/src/main/mdo/core-extensions.mdo
new file mode 100644
index 0000000..f4b0215
--- /dev/null
+++ b/maven-embedder/src/main/mdo/core-extensions.mdo
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements.  See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership.  The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied.  See the License for the
+  specific language governing permissions and limitations
+  under the License.
+
+-->
+
+<model xmlns="http://modello.codehaus.org/MODELLO/1.4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+  <id>CoreExtensions</id>
+  <name>CoreExtensions</name>
+
+  <defaults>
+    <default>
+      <key>package</key>
+      <value>org.apache.maven.cli.internal.extension.model</value>
+    </default>
+  </defaults>
+
+  <classes>
+    <class rootElement="true" xml.tagName="extensions">
+      <name>CoreExtensions</name>
+      <version>1.0.0+</version>
+      <fields>
+        <field>
+          <name>extensions</name>
+          <version>1.0.0+</version>
+          <association xml.itemsStyle="flat">
+            <type>CoreExtension</type>
+            <multiplicity>*</multiplicity>
+          </association>
+        </field>
+      </fields>
+    </class>
+    <class xml.tagName="extension">
+      <name>CoreExtension</name>
+      <version>1.0.0+</version>
+      <fields>
+        <field>
+          <name>groupId</name>
+          <version>1.0.0+</version>
+          <required>true</required>
+          <type>String</type>
+        </field>
+        <field>
+          <name>artifactId</name>
+          <version>1.0.0+</version>
+          <required>true</required>
+          <type>String</type>
+        </field>
+        <field>
+          <name>version</name>
+          <version>1.0.0+</version>
+          <required>true</required>
+          <type>String</type>
+        </field>
+      </fields>
+    </class>
+  </classes>
+</model>


[32/50] [abbrv] maven git commit: MNG-5783 fixed slf4j is missing from ${plugin.artifacts}

Posted by ah...@apache.org.
MNG-5783 fixed slf4j is missing from ${plugin.artifacts}

Some plugins, e.g., cobertura-maven-plugin, use ${plugin.artifacts}
to setup classpath of externally launched jvms and they expect slf4j
to be available among plugin dependencies. At the same time slf4j
is already part of maven core runtime and it needs to be filtered
out from plugin and build extension realms to avoid duplicate classes
on classpath.

The fix is to move core artifact filtering from plugin dependency
resolver to class realm manager. This way ${plugin.artifacts} still
includes all compile/runtime scoped plugin dependencies but runtime
classpath only has plugin unique artifacts.

Signed-off-by: Igor Fedorenko <if...@apache.org>


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

Branch: refs/heads/slf4j-log4j2
Commit: b7088a34edd8cd34ab3b376d9baf90bdb6f8dc00
Parents: ab5f3a9
Author: Igor Fedorenko <if...@apache.org>
Authored: Tue Mar 10 09:40:36 2015 -0400
Committer: Igor Fedorenko <if...@apache.org>
Committed: Tue Mar 10 10:07:29 2015 -0400

----------------------------------------------------------------------
 .../classrealm/DefaultClassRealmManager.java    | 22 +++++++++++++++++---
 .../DefaultPluginDependenciesResolver.java      | 10 +--------
 2 files changed, 20 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/b7088a34/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java b/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java
index 38e117f..69ee04a 100644
--- a/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java
+++ b/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java
@@ -83,6 +83,12 @@ public class DefaultClassRealmManager
 
     private final ClassRealm mavenApiRealm;
 
+    /**
+     * Patterns of artifacts provided by maven core and exported via maven api realm. These artifacts are filtered from
+     * plugin and build extensions realms to avoid presence of duplicate and possibly conflicting classes on classpath.
+     */
+    private final Set<String> providedArtifacts;
+
     @Inject
     public DefaultClassRealmManager( Logger logger, PlexusContainer container,
                                      List<ClassRealmManagerDelegate> delegates, CoreExportsProvider exports )
@@ -97,6 +103,8 @@ public class DefaultClassRealmManager
         this.mavenApiRealm =
             createRealm( API_REALMID, RealmType.Core, null /* parent */, null /* parentImports */, 
                          foreignImports, null /* artifacts */ );
+
+        this.providedArtifacts = exports.get().getExportedArtifacts();
     }
 
     private ClassRealm newRealm( String id )
@@ -156,10 +164,13 @@ public class DefaultClassRealmManager
         {
             for ( Artifact artifact : artifacts )
             {
-                artifactIds.add( getId( artifact ) );
-                if ( artifact.getFile() != null )
+                if ( !isProvidedArtifact( artifact ) )
                 {
-                    constituents.add( new ArtifactClassRealmConstituent( artifact ) );
+                    artifactIds.add( getId( artifact ) );
+                    if ( artifact.getFile() != null )
+                    {
+                        constituents.add( new ArtifactClassRealmConstituent( artifact ) );
+                    }
                 }
             }
         }
@@ -245,6 +256,11 @@ public class DefaultClassRealmManager
         return createRealm( getKey( plugin, true ), RealmType.Extension, parent, null, foreignImports, artifacts );
     }
 
+    private boolean isProvidedArtifact( Artifact artifact )
+    {
+        return providedArtifacts.contains( artifact.getGroupId() + ":" + artifact.getArtifactId() );
+    }
+
     public ClassRealm createPluginRealm( Plugin plugin, ClassLoader parent, List<String> parentImports,
                                          Map<String, ClassLoader> foreignImports, List<Artifact> artifacts )
     {

http://git-wip-us.apache.org/repos/asf/maven/blob/b7088a34/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
index 9a9a7b8..5b0c271 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
@@ -23,7 +23,6 @@ import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
 
-import org.apache.maven.ArtifactFilterManager;
 import org.apache.maven.RepositoryUtils;
 import org.apache.maven.model.Dependency;
 import org.apache.maven.model.Plugin;
@@ -54,7 +53,6 @@ import org.eclipse.aether.resolution.DependencyRequest;
 import org.eclipse.aether.resolution.DependencyResolutionException;
 import org.eclipse.aether.util.artifact.JavaScopes;
 import org.eclipse.aether.util.filter.AndDependencyFilter;
-import org.eclipse.aether.util.filter.ExclusionsDependencyFilter;
 import org.eclipse.aether.util.filter.ScopeDependencyFilter;
 import org.eclipse.aether.util.graph.selector.AndDependencySelector;
 import org.eclipse.aether.util.graph.transformer.ChainedDependencyGraphTransformer;
@@ -79,9 +77,6 @@ public class DefaultPluginDependenciesResolver
     private Logger logger;
 
     @Requirement
-    private ArtifactFilterManager artifactFilterManager;
-
-    @Requirement
     private RepositorySystem repoSystem;
 
     private Artifact toArtifact( Plugin plugin, RepositorySystemSession session )
@@ -151,10 +146,7 @@ public class DefaultPluginDependenciesResolver
                                    List<RemoteRepository> repositories, RepositorySystemSession session )
         throws PluginResolutionException
     {
-        DependencyFilter resolutionFilter =
-            new ExclusionsDependencyFilter( artifactFilterManager.getCoreArtifactExcludes() );
-        resolutionFilter = AndDependencyFilter.newInstance( resolutionFilter, dependencyFilter );
-        return resolveInternal( plugin, pluginArtifact, resolutionFilter, new PlexusUtilsInjector(), repositories,
+        return resolveInternal( plugin, pluginArtifact, dependencyFilter, new PlexusUtilsInjector(), repositories,
                                 session );
     }
 


[12/50] [abbrv] maven git commit: MNG-5767 renamed projectBasedir to more descriptive multiModuleProjectDirectory

Posted by ah...@apache.org.
MNG-5767 renamed projectBasedir to more descriptive multiModuleProjectDirectory

Signed-off-by: Igor Fedorenko <if...@apache.org>


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

Branch: refs/heads/slf4j-log4j2
Commit: e28be4d33a0c2a1e4baeba56faace665804dfb60
Parents: b8dcb08
Author: Igor Fedorenko <if...@apache.org>
Authored: Mon Feb 23 13:47:28 2015 -0500
Committer: Igor Fedorenko <if...@apache.org>
Committed: Mon Feb 23 13:47:34 2015 -0500

----------------------------------------------------------------------
 apache-maven/src/bin/mvn                        |  2 +-
 .../execution/DefaultMavenExecutionRequest.java | 10 +++++-----
 .../maven/execution/MavenExecutionRequest.java  |  4 ++--
 .../java/org/apache/maven/cli/MavenCli.java     | 20 ++++++++++----------
 .../java/org/apache/maven/cli/MavenCliTest.java | 10 +++++-----
 5 files changed, 23 insertions(+), 23 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/e28be4d3/apache-maven/src/bin/mvn
----------------------------------------------------------------------
diff --git a/apache-maven/src/bin/mvn b/apache-maven/src/bin/mvn
index 26feda4..3ceb5b6 100755
--- a/apache-maven/src/bin/mvn
+++ b/apache-maven/src/bin/mvn
@@ -223,5 +223,5 @@ exec "$JAVACMD" \
   $MAVEN_OPTS \
   -classpath "${M2_HOME}"/boot/plexus-classworlds-*.jar \
   "-Dclassworlds.conf=${M2_HOME}/bin/m2.conf" \
-  "-Dmaven.home=${M2_HOME}" "-Dmaven.projectBasedir=${MAVEN_PROJECTBASEDIR}" \
+  "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
   ${CLASSWORLDS_LAUNCHER} "$@"

http://git-wip-us.apache.org/repos/asf/maven/blob/e28be4d3/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java b/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java
index f4439b1..9daba38 100644
--- a/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java
+++ b/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java
@@ -93,7 +93,7 @@ public class DefaultMavenExecutionRequest
     // Request
     // ----------------------------------------------------------------------------
 
-    private File projectBasedir;
+    private File multiModuleProjectDirectory;
 
     private File basedir;
 
@@ -1153,14 +1153,14 @@ public class DefaultMavenExecutionRequest
     }
 
     @Override
-    public void setProjectBaseDirectory( File directory )
+    public void setMultiModuleProjectDirectory( File directory )
     {
-        this.projectBasedir = directory;
+        this.multiModuleProjectDirectory = directory;
     }
 
     @Override
-    public File getProjectBaseDirectory()
+    public File getMultiModuleProjectDirectory()
     {
-        return projectBasedir;
+        return multiModuleProjectDirectory;
     }
 }

http://git-wip-us.apache.org/repos/asf/maven/blob/e28be4d3/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java b/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java
index 55d7ff2..bb4a49a 100644
--- a/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java
+++ b/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java
@@ -418,10 +418,10 @@ public interface MavenExecutionRequest
     /**
      * @since 3.2.6
      */
-    void setProjectBaseDirectory( File file );
+    void setMultiModuleProjectDirectory( File file );
 
     /**
      * @since 3.2.6
      */
-    File getProjectBaseDirectory();
+    File getMultiModuleProjectDirectory();
 }

http://git-wip-us.apache.org/repos/asf/maven/blob/e28be4d3/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java b/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
index 1c2ffc0..cd36832 100644
--- a/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
+++ b/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
@@ -124,7 +124,7 @@ public class MavenCli
 
     public static final String THREADS_DEPRECATED = "maven.threads.experimental";
 
-    public static final String PROJECT_BASEDIR = "maven.projectBasedir";
+    public static final String MULTIMODULE_PROJECT_DIRECTORY = "maven.multiModuleProjectDirectory";
 
     @SuppressWarnings( "checkstyle:constantname" )
     public static final String userHome = System.getProperty( "user.home" );
@@ -318,17 +318,17 @@ public class MavenCli
             cliRequest.workingDirectory = System.getProperty( "user.dir" );
         }
 
-        if ( cliRequest.projectBaseDirectory == null )
+        if ( cliRequest.multiModuleProjectDirectory == null )
         {
-            String basedirProperty = System.getProperty( PROJECT_BASEDIR );
+            String basedirProperty = System.getProperty( MULTIMODULE_PROJECT_DIRECTORY );
             File basedir = basedirProperty != null ? new File( basedirProperty ) : new File( "" );
             try
             {
-                cliRequest.projectBaseDirectory = basedir.getCanonicalFile();
+                cliRequest.multiModuleProjectDirectory = basedir.getCanonicalFile();
             }
             catch ( IOException e )
             {
-                cliRequest.projectBaseDirectory = basedir.getAbsoluteFile();
+                cliRequest.multiModuleProjectDirectory = basedir.getAbsoluteFile();
             }
         }
 
@@ -359,7 +359,7 @@ public class MavenCli
 
         try
         {
-            File configFile = new File( cliRequest.projectBaseDirectory, ".mvn/maven.config" );
+            File configFile = new File( cliRequest.multiModuleProjectDirectory, ".mvn/maven.config" );
 
             if ( configFile.isFile() )
             {
@@ -586,12 +586,12 @@ public class MavenCli
     private List<CoreExtensionEntry> loadCoreExtensions( CliRequest cliRequest, ClassRealm containerRealm,
                                                          Set<String> providedArtifacts )
     {
-        if ( cliRequest.projectBaseDirectory == null )
+        if ( cliRequest.multiModuleProjectDirectory == null )
         {
             return Collections.emptyList();
         }
 
-        File extensionsFile = new File( cliRequest.projectBaseDirectory, EXTENSIONS_FILENAME );
+        File extensionsFile = new File( cliRequest.multiModuleProjectDirectory, EXTENSIONS_FILENAME );
         if ( !extensionsFile.isFile() )
         {
             return Collections.emptyList();
@@ -1339,7 +1339,7 @@ public class MavenCli
             .setUpdateSnapshots( updateSnapshots ) // default: false
             .setNoSnapshotUpdates( noSnapshotUpdates ) // default: false
             .setGlobalChecksumPolicy( globalChecksumPolicy ) // default: warn
-            .setProjectBaseDirectory( cliRequest.projectBaseDirectory )
+            .setMultiModuleProjectDirectory( cliRequest.multiModuleProjectDirectory )
             ;
 
         if ( alternatePomFile != null )
@@ -1588,7 +1588,7 @@ public class MavenCli
         CommandLine commandLine;
         ClassWorld classWorld;
         String workingDirectory;
-        File projectBaseDirectory;
+        File multiModuleProjectDirectory;
         boolean debug;
         boolean quiet;
         boolean showErrors = true;

http://git-wip-us.apache.org/repos/asf/maven/blob/e28be4d3/maven-embedder/src/test/java/org/apache/maven/cli/MavenCliTest.java
----------------------------------------------------------------------
diff --git a/maven-embedder/src/test/java/org/apache/maven/cli/MavenCliTest.java b/maven-embedder/src/test/java/org/apache/maven/cli/MavenCliTest.java
index 628ef20..0c85dfb 100644
--- a/maven-embedder/src/test/java/org/apache/maven/cli/MavenCliTest.java
+++ b/maven-embedder/src/test/java/org/apache/maven/cli/MavenCliTest.java
@@ -36,7 +36,7 @@ public class MavenCliTest
     protected void setUp()
     {
         cli = new MavenCli();
-        origBasedir = System.getProperty( MavenCli.PROJECT_BASEDIR );
+        origBasedir = System.getProperty( MavenCli.MULTIMODULE_PROJECT_DIRECTORY );
     }
 
     @Override
@@ -45,11 +45,11 @@ public class MavenCliTest
     {
         if ( origBasedir != null )
         {
-            System.setProperty( MavenCli.PROJECT_BASEDIR, origBasedir );
+            System.setProperty( MavenCli.MULTIMODULE_PROJECT_DIRECTORY, origBasedir );
         }
         else
         {
-            System.getProperties().remove( MavenCli.PROJECT_BASEDIR );
+            System.getProperties().remove( MavenCli.MULTIMODULE_PROJECT_DIRECTORY );
         }
         super.tearDown();
     }
@@ -76,7 +76,7 @@ public class MavenCliTest
     public void testMavenConfig()
         throws Exception
     {
-        System.setProperty( MavenCli.PROJECT_BASEDIR, new File( "src/test/projects/config" ).getCanonicalPath() );
+        System.setProperty( MavenCli.MULTIMODULE_PROJECT_DIRECTORY, new File( "src/test/projects/config" ).getCanonicalPath() );
         CliRequest request = new CliRequest( new String[0], null );
 
         // read .mvn/maven.config
@@ -94,7 +94,7 @@ public class MavenCliTest
     public void testMavenConfigInvalid()
         throws Exception
     {
-        System.setProperty( MavenCli.PROJECT_BASEDIR, new File( "src/test/projects/config-illegal" ).getCanonicalPath() );
+        System.setProperty( MavenCli.MULTIMODULE_PROJECT_DIRECTORY, new File( "src/test/projects/config-illegal" ).getCanonicalPath() );
         CliRequest request = new CliRequest( new String[0], null );
 
         cli.initialize( request );


[31/50] [abbrv] maven git commit: added doculmentation about extension descriptor

Posted by ah...@apache.org.
added doculmentation about extension descriptor

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

Branch: refs/heads/slf4j-log4j2
Commit: ab5f3a9de789c2ee3fcac79646bdb3240ab15cc1
Parents: 207d18d
Author: Hervé Boutemy <hb...@apache.org>
Authored: Mon Mar 9 04:56:26 2015 +0100
Committer: Hervé Boutemy <hb...@apache.org>
Committed: Mon Mar 9 04:56:26 2015 +0100

----------------------------------------------------------------------
 maven-core/pom.xml                    | 15 +++++++
 maven-core/src/main/mdo/extension.mdo | 65 ++++++++++++++++++++++++++++++
 maven-core/src/site/apt/index.apt     |  2 +
 3 files changed, 82 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/ab5f3a9d/maven-core/pom.xml
----------------------------------------------------------------------
diff --git a/maven-core/pom.xml b/maven-core/pom.xml
index e69ffd3..ef6ccd9 100644
--- a/maven-core/pom.xml
+++ b/maven-core/pom.xml
@@ -190,6 +190,21 @@
             <model>src/main/mdo/toolchains.mdo</model>
           </models>
         </configuration>
+        <executions>
+          <execution>
+            <id>plugin-site-doc</id>
+            <phase>pre-site</phase>
+            <goals>
+              <goal>xdoc</goal>
+            </goals>
+            <configuration>
+              <version>1.0.0</version>
+              <models>
+                <model>src/main/mdo/extension.mdo</model>
+              </models>
+            </configuration>
+          </execution>
+        </executions>
       </plugin>
       <plugin>
         <groupId>org.codehaus.mojo</groupId>

http://git-wip-us.apache.org/repos/asf/maven/blob/ab5f3a9d/maven-core/src/main/mdo/extension.mdo
----------------------------------------------------------------------
diff --git a/maven-core/src/main/mdo/extension.mdo b/maven-core/src/main/mdo/extension.mdo
new file mode 100644
index 0000000..4b2e460
--- /dev/null
+++ b/maven-core/src/main/mdo/extension.mdo
@@ -0,0 +1,65 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+<model xmlns="http://modello.codehaus.org/MODELLO/1.4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://modello.codehaus.org/MODELLO/1.4.0 http://modello.codehaus.org/xsd/modello-1.4.0.xsd">
+  <id>extension</id>
+  <name>ExtensionDescriptor</name>
+  <description><![CDATA[
+    Extension descriptor, stored in <code>META-INF/maven/extension.xml</code> in an extension's jar artifact to
+    precisely control parts of the extension and dependencies to expose.
+    <p><i>Notice:</i> this documentation is generated from a Modello model but the code executed is not generated
+    from this descriptor. Please report if you find anything wrong.</p>
+  ]]></description>
+  <defaults>
+    <default>
+      <key>package</key>
+      <value>extension descriptor XML documentation (no java generation)</value><!-- intentionally non-buildable value -->
+    </default>
+  </defaults>
+  <classes>
+    <class rootElement="true" xml.tagName="extension">
+      <name>ExtensionDescriptor</name>
+      <version>1.0.0</version>
+      <description><![CDATA[Root element of the <code>extension.xml</code> file.]]></description>
+      <fields>
+        <field>
+          <name>exportedPackages</name>
+          <version>1.0.0</version>
+          <association>
+            <type>String</type>
+            <multiplicity>*</multiplicity>
+          </association>
+          <description>Packages from the artifact that are exposed.</description>
+          <!-- TODO explain package vs package.class vs package.* -->
+        </field>
+        <field>
+          <name>exportedArtifacts</name>
+          <version>1.0.0</version>
+          <association>
+            <type>String</type>
+            <multiplicity>*</multiplicity>
+          </association>
+          <description><![CDATA[Artifacts that are exposed: <code>groupId:artifactId</code> file.]]>
+          </description>
+        </field>
+      </fields>
+    </class>
+  </classes>
+</model>

http://git-wip-us.apache.org/repos/asf/maven/blob/ab5f3a9d/maven-core/src/site/apt/index.apt
----------------------------------------------------------------------
diff --git a/maven-core/src/site/apt/index.apt b/maven-core/src/site/apt/index.apt
index 390215c..f6c26fd 100644
--- a/maven-core/src/site/apt/index.apt
+++ b/maven-core/src/site/apt/index.apt
@@ -53,6 +53,8 @@ Maven Core
  ({{{./xref/org/apache/maven/classrealm/DefaultClassRealmManager.html}source}}), using
  {{{http://plexus.codehaus.org/plexus-classworlds/}Plexus Classworlds}},
 
+ * {{{./extension.html}extension descriptor}},
+
  * <<<ExceptionHandler>>> component ({{{./apidocs/org/apache/maven/exception/ExceptionHandler.html}javadoc}}),
  with its <<<DefaultExceptionHandler>>> implementation
  ({{{./xref/org/apache/maven/exception/DefaultExceptionHandler.html}source}}), use to transform exception into useful end-user messages.


[21/50] [abbrv] maven git commit: MNG-5775 Make the project graph building code pluggable to allow for new/different implementations.

Posted by ah...@apache.org.
MNG-5775 Make the project graph building code pluggable to allow for new/different implementations.


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

Branch: refs/heads/slf4j-log4j2
Commit: be3fb200326208ca4b8c41ebf16d5ae6b8049792
Parents: 7997634
Author: Jason van Zyl <ja...@tesla.io>
Authored: Wed Sep 3 11:48:28 2014 -0700
Committer: Jason van Zyl <ja...@tesla.io>
Committed: Sun Mar 1 12:39:30 2015 -0800

----------------------------------------------------------------------
 .../DefaultArtifactDescriptorReader.java        |  14 +-
 .../internal/MavenWorkspaceReader.java          |  32 ++
 .../java/org/apache/maven/DefaultMaven.java     | 500 +++----------------
 .../maven/DefaultProjectDependencyGraph.java    | 134 -----
 .../maven/FilteredProjectDependencyGraph.java   | 111 ----
 .../org/apache/maven/ProjectCycleException.java |   5 +
 .../java/org/apache/maven/ReactorReader.java    |  13 +-
 .../apache/maven/execution/MavenSession.java    |   9 +-
 .../apache/maven/graph/DefaultGraphBuilder.java | 487 ++++++++++++++++++
 .../graph/DefaultProjectDependencyGraph.java    | 134 +++++
 .../graph/FilteredProjectDependencyGraph.java   | 111 ++++
 .../org/apache/maven/graph/GraphBuilder.java    |  31 ++
 .../project/DefaultModelBuildingListener.java   |   2 +-
 .../org/apache/maven/project/MavenProject.java  |   2 +-
 .../maven/project/ProjectModelResolver.java     |   3 +-
 .../DefaultProjectDependencyGraphTest.java      | 172 -------
 .../DefaultProjectDependencyGraphTest.java      | 172 +++++++
 .../maven/lifecycle/LifecycleExecutorTest.java  |   5 +
 maven-model-builder/pom.xml                     |   5 +-
 .../model/building/DefaultModelBuilder.java     | 291 +++++++----
 .../building/DefaultModelBuildingRequest.java   |  32 ++
 .../building/FilterModelBuildingRequest.java    |  30 +-
 .../maven/model/building/ModelBuilder.java      |  13 +
 .../model/building/ModelBuildingRequest.java    |  22 +-
 .../org/apache/maven/model/building/Result.java | 255 ++++++++++
 .../resolution/UnresolvableModelException.java  |  16 +
 .../resolution/WorkspaceModelResolver.java      |  33 ++
 maven-model/src/main/mdo/maven.mdo              |   8 +-
 28 files changed, 1676 insertions(+), 966 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java
index 0fea15a..a768de5 100644
--- a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java
+++ b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java
@@ -52,6 +52,7 @@ import org.eclipse.aether.impl.RemoteRepositoryManager;
 import org.eclipse.aether.impl.RepositoryEventDispatcher;
 import org.eclipse.aether.impl.VersionRangeResolver;
 import org.eclipse.aether.impl.VersionResolver;
+import org.eclipse.aether.repository.WorkspaceReader;
 import org.eclipse.aether.repository.WorkspaceRepository;
 import org.eclipse.aether.resolution.ArtifactDescriptorException;
 import org.eclipse.aether.resolution.ArtifactDescriptorPolicy;
@@ -215,7 +216,6 @@ public class DefaultArtifactDescriptorReader
         ArtifactDescriptorResult result = new ArtifactDescriptorResult( request );
 
         Model model = loadPom( session, request, result );
-
         if ( model != null )
         {
             Map<String, Object> config = session.getConfigProperties();
@@ -303,6 +303,18 @@ public class DefaultArtifactDescriptorReader
             }
 
             Model model;
+
+            // hack: don't rebuild model if it was already loaded during reactor resolution
+            final WorkspaceReader workspace = session.getWorkspaceReader();
+            if ( workspace instanceof MavenWorkspaceReader )
+            {
+                model = ( (MavenWorkspaceReader) workspace ).findModel( pomArtifact );
+                if ( model != null )
+                {
+                    return model;
+                }
+            }
+
             try
             {
                 ModelBuildingRequest modelRequest = new DefaultModelBuildingRequest();

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenWorkspaceReader.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenWorkspaceReader.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenWorkspaceReader.java
new file mode 100644
index 0000000..270cf58
--- /dev/null
+++ b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenWorkspaceReader.java
@@ -0,0 +1,32 @@
+package org.apache.maven.repository.internal;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.maven.model.Model;
+import org.eclipse.aether.artifact.Artifact;
+import org.eclipse.aether.repository.WorkspaceReader;
+
+public interface MavenWorkspaceReader
+    extends WorkspaceReader
+{
+
+    Model findModel( Artifact artifact );
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/DefaultMaven.java b/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
index 20d3758..3009301 100644
--- a/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
+++ b/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
@@ -9,7 +9,7 @@ package org.apache.maven;
  * "License"); you may not use this file except in compliance
  * with the License.  You may obtain a copy of the License at
  *
- *  http://www.apache.org/licenses/LICENSE-2.0
+ *   http://www.apache.org/licenses/LICENSE-2.0
  *
  * Unless required by applicable law or agreed to in writing,
  * software distributed under the License is distributed on an
@@ -25,7 +25,6 @@ import java.util.Arrays;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.Date;
-import java.util.HashMap;
 import java.util.HashSet;
 import java.util.LinkedHashMap;
 import java.util.LinkedHashSet;
@@ -39,20 +38,15 @@ import org.apache.maven.execution.MavenExecutionRequest;
 import org.apache.maven.execution.MavenExecutionResult;
 import org.apache.maven.execution.MavenSession;
 import org.apache.maven.execution.ProjectDependencyGraph;
+import org.apache.maven.graph.GraphBuilder;
 import org.apache.maven.internal.aether.DefaultRepositorySystemSessionFactory;
 import org.apache.maven.lifecycle.internal.ExecutionEventCatapult;
 import org.apache.maven.lifecycle.internal.LifecycleStarter;
-import org.apache.maven.model.Plugin;
 import org.apache.maven.model.building.ModelProblem;
-import org.apache.maven.model.building.ModelProblemUtils;
-import org.apache.maven.model.building.ModelSource;
-import org.apache.maven.model.building.UrlModelSource;
+import org.apache.maven.model.building.Result;
 import org.apache.maven.plugin.LegacySupport;
 import org.apache.maven.project.MavenProject;
 import org.apache.maven.project.ProjectBuilder;
-import org.apache.maven.project.ProjectBuildingException;
-import org.apache.maven.project.ProjectBuildingRequest;
-import org.apache.maven.project.ProjectBuildingResult;
 import org.apache.maven.repository.LocalRepositoryNotAccessibleException;
 import org.apache.maven.session.scope.internal.SessionScope;
 import org.codehaus.plexus.PlexusContainer;
@@ -60,13 +54,13 @@ import org.codehaus.plexus.component.annotations.Component;
 import org.codehaus.plexus.component.annotations.Requirement;
 import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
 import org.codehaus.plexus.logging.Logger;
-import org.codehaus.plexus.util.StringUtils;
-import org.codehaus.plexus.util.dag.CycleDetectedException;
 import org.eclipse.aether.DefaultRepositorySystemSession;
 import org.eclipse.aether.RepositorySystemSession;
 import org.eclipse.aether.repository.WorkspaceReader;
 import org.eclipse.aether.util.repository.ChainedWorkspaceReader;
 
+import com.google.common.collect.Iterables;
+
 /**
  * @author Jason van Zyl
  */
@@ -99,6 +93,9 @@ public class DefaultMaven
     @Requirement
     private DefaultRepositorySystemSessionFactory repositorySessionFactory;
 
+    @Requirement( hint = GraphBuilder.HINT )
+    private GraphBuilder graphBuilder;
+
     @Override
     public MavenExecutionResult execute( MavenExecutionRequest request )
     {
@@ -114,9 +111,18 @@ public class DefaultMaven
         }
         catch ( RuntimeException e )
         {
-            result =
-                addExceptionToResult( new DefaultMavenExecutionResult(), new InternalErrorException( "Internal error: "
-                    + e, e ) );
+            //TODO Hack to make the cycle detection the same for the new graph builder
+            if ( e.getCause() instanceof ProjectCycleException )
+            {
+                result = addExceptionToResult( new DefaultMavenExecutionResult(), e.getCause() );
+            }
+            else
+            {
+                result = addExceptionToResult( new DefaultMavenExecutionResult(), new InternalErrorException(
+                                                                                                              "Internal error: "
+                                                                                                                  + e,
+                                                                                                              e ) );
+            }
         }
         finally
         {
@@ -140,17 +146,17 @@ public class DefaultMaven
     // 6) Get reactor projects looking for general POM errors
     //
     // 7) Create ProjectDependencyGraph using trimming which takes into account --projects and reactor mode.
-    //    This ensures that the projects passed into the ReactorReader are only those specified.
+    // This ensures that the projects passed into the ReactorReader are only those specified.
     //
     // 8) Create ReactorReader with the getProjectMap( projects ). NOTE that getProjectMap(projects) is the code that
-    //    checks for duplicate projects definitions in the build. Ideally this type of duplicate checking should be
-    //    part of getting the reactor projects in 6). The duplicate checking is conflated with getProjectMap(projects).
+    // checks for duplicate projects definitions in the build. Ideally this type of duplicate checking should be
+    // part of getting the reactor projects in 6). The duplicate checking is conflated with getProjectMap(projects).
     //
     // 9) Execute AbstractLifecycleParticipant.afterProjectsRead(session)
     //
     // 10) Create ProjectDependencyGraph without trimming (as trimming was done in 7). A new topological sort is
-    //     required after the execution of 9) as the AbstractLifecycleParticipants are free to mutate the MavenProject
-    //     instances, which may change dependencies which can, in turn, affect the build order.
+    // required after the execution of 9) as the AbstractLifecycleParticipants are free to mutate the MavenProject
+    // instances, which may change dependencies which can, in turn, affect the build order.
     //
     // 11) Execute LifecycleStarter.start()
     //
@@ -171,7 +177,8 @@ public class DefaultMaven
         }
 
         //
-        // We enter the session scope right after the MavenSession creation and before any of the AbstractLifecycleParticipant lookups
+        // We enter the session scope right after the MavenSession creation and before any of the
+        // AbstractLifecycleParticipant lookups
         // so that @SessionScoped components can be @Injected into AbstractLifecycleParticipants.
         //
         sessionScope.enter();
@@ -198,7 +205,8 @@ public class DefaultMaven
     {
         try
         {
-            for ( AbstractMavenLifecycleParticipant listener : getLifecycleParticipants( Collections.<MavenProject>emptyList() ) )
+            for ( AbstractMavenLifecycleParticipant listener : getLifecycleParticipants( Collections
+                .<MavenProject>emptyList() ) )
             {
                 listener.afterSessionStart( session );
             }
@@ -210,36 +218,15 @@ public class DefaultMaven
 
         eventCatapult.fire( ExecutionEvent.Type.ProjectDiscoveryStarted, session, null );
 
-        List<MavenProject> projects;
-        try
-        {
-            projects = getProjectsForMavenReactor( session );
-            //
-            // Capture the full set of projects before any potential constraining is performed by --projects
-            //
-            session.setAllProjects( projects );
-        }
-        catch ( ProjectBuildingException e )
-        {
-            return addExceptionToResult( result, e );
-        }
-
-        validateProjects( projects );
-
-        //
-        // This creates the graph and trims the projects down based on the user request using something like:
-        //
-        // -pl project0,project2 eclipse:eclipse
-        //
-        ProjectDependencyGraph projectDependencyGraph = createProjectDependencyGraph( projects, request, result, true );
-
-        if ( result.hasExceptions() )
+        Result<? extends ProjectDependencyGraph> graphResult = buildGraph( session, result );
+        
+        if ( graphResult.hasErrors() )
         {
-            return result;
+            return addExceptionToResult( result,
+                                         Iterables.toArray( graphResult.getProblems(), ModelProblem.class )[0]
+                                             .getException() );
         }
 
-        session.setProjects( projectDependencyGraph.getSortedProjects() );
-
         try
         {
             session.setProjectMap( getProjectMap( session.getProjects() ) );
@@ -274,7 +261,7 @@ public class DefaultMaven
         ClassLoader originalClassLoader = Thread.currentThread().getContextClassLoader();
         try
         {
-            for ( AbstractMavenLifecycleParticipant listener : getLifecycleParticipants( projects ) )
+            for ( AbstractMavenLifecycleParticipant listener : getLifecycleParticipants( session.getProjects() ) )
             {
                 Thread.currentThread().setContextClassLoader( listener.getClass().getClassLoader() );
 
@@ -298,7 +285,15 @@ public class DefaultMaven
         // Note that participants may affect the topological order of the projects but it is
         // not expected that a participant will add or remove projects from the session.
         //
-        projectDependencyGraph = createProjectDependencyGraph( session.getProjects(), request, result, false );
+        
+        graphResult = buildGraph( session, result );
+        
+        if ( graphResult.hasErrors() )
+        {
+            return addExceptionToResult( result,
+                                         Iterables.toArray( graphResult.getProblems(), ModelProblem.class )[0]
+                                             .getException() );
+        }
 
         try
         {
@@ -307,10 +302,6 @@ public class DefaultMaven
                 return result;
             }
 
-            session.setProjects( projectDependencyGraph.getSortedProjects() );
-
-            session.setProjectDependencyGraph( projectDependencyGraph );
-
             result.setTopologicallySortedProjects( session.getProjects() );
 
             result.setProject( session.getTopLevelProject() );
@@ -328,7 +319,7 @@ public class DefaultMaven
         {
             try
             {
-                afterSessionEnd( projects, session );
+                afterSessionEnd( session.getProjects(), session );
             }
             catch ( MavenExecutionException e )
             {
@@ -357,7 +348,7 @@ public class DefaultMaven
             Thread.currentThread().setContextClassLoader( originalClassLoader );
         }
     }
-
+    
     public RepositorySystemSession newRepositorySession( MavenExecutionRequest request )
     {
         return repositorySessionFactory.newRepositorySession( request );
@@ -380,8 +371,7 @@ public class DefaultMaven
 
     private Collection<AbstractMavenLifecycleParticipant> getLifecycleParticipants( Collection<MavenProject> projects )
     {
-        Collection<AbstractMavenLifecycleParticipant> lifecycleListeners =
-            new LinkedHashSet<AbstractMavenLifecycleParticipant>();
+        Collection<AbstractMavenLifecycleParticipant> lifecycleListeners = new LinkedHashSet<AbstractMavenLifecycleParticipant>();
 
         ClassLoader originalClassLoader = Thread.currentThread().getContextClassLoader();
         try
@@ -436,72 +426,22 @@ public class DefaultMaven
         return result;
     }
 
-    private List<MavenProject> getProjectsForMavenReactor( MavenSession session )
-        throws ProjectBuildingException
-    {
-        MavenExecutionRequest request = session.getRequest();
-
-        request.getProjectBuildingRequest().setRepositorySession( session.getRepositorySession() );
-
-        List<MavenProject> projects = new ArrayList<MavenProject>();
-
-        // We have no POM file.
-        //
-        if ( request.getPom() == null )
-        {
-            ModelSource modelSource = new UrlModelSource( DefaultMaven.class.getResource( "project/standalone.xml" ) );
-            MavenProject project =
-                projectBuilder.build( modelSource, request.getProjectBuildingRequest() ).getProject();
-            project.setExecutionRoot( true );
-            projects.add( project );
-            request.setProjectPresent( false );
-            return projects;
-        }
-
-        List<File> files = Arrays.asList( request.getPom().getAbsoluteFile() );
-        collectProjects( projects, files, request );
-        return projects;
-    }
-
-    private void collectProjects( List<MavenProject> projects, List<File> files, MavenExecutionRequest request )
-        throws ProjectBuildingException
+    private void validateActivatedProfiles( List<MavenProject> projects, List<String> activeProfileIds )
     {
-        ProjectBuildingRequest projectBuildingRequest = request.getProjectBuildingRequest();
-
-        List<ProjectBuildingResult> results =
-            projectBuilder.build( files, request.isRecursive(), projectBuildingRequest );
-
-        boolean problems = false;
+        Collection<String> notActivatedProfileIds = new LinkedHashSet<String>( activeProfileIds );
 
-        for ( ProjectBuildingResult result : results )
+        for ( MavenProject project : projects )
         {
-            projects.add( result.getProject() );
-
-            if ( !result.getProblems().isEmpty() && logger.isWarnEnabled() )
+            for ( List<String> profileIds : project.getInjectedProfileIds().values() )
             {
-                logger.warn( "" );
-                logger.warn( "Some problems were encountered while building the effective model for "
-                    + result.getProject().getId() );
-
-                for ( ModelProblem problem : result.getProblems() )
-                {
-                    String loc = ModelProblemUtils.formatLocation( problem, result.getProjectId() );
-                    logger.warn( problem.getMessage() + ( StringUtils.isNotEmpty( loc ) ? " @ " + loc : "" ) );
-                }
-
-                problems = true;
+                notActivatedProfileIds.removeAll( profileIds );
             }
         }
 
-        if ( problems )
+        for ( String notActivatedProfileId : notActivatedProfileIds )
         {
-            logger.warn( "" );
-            logger.warn( "It is highly recommended to fix these problems"
-                + " because they threaten the stability of your build." );
-            logger.warn( "" );
-            logger.warn( "For this reason, future Maven versions might no"
-                + " longer support building such malformed projects." );
-            logger.warn( "" );
+            logger.warn( "The requested profile \"" + notActivatedProfileId
+                + "\" could not be activated because it does not exist." );
         }
     }
 
@@ -547,330 +487,36 @@ public class DefaultMaven
         return index;
     }
 
-    private void validateProjects( List<MavenProject> projects )
+    private Result<? extends ProjectDependencyGraph> buildGraph( MavenSession session, MavenExecutionResult result ) 
     {
-        Map<String, MavenProject> projectsMap = new HashMap<String, MavenProject>();
-
-        for ( MavenProject p : projects )
+        Result<? extends ProjectDependencyGraph> graphResult = graphBuilder.build( session );
+        for ( ModelProblem problem : graphResult.getProblems() )
         {
-            String projectKey = ArtifactUtils.key( p.getGroupId(), p.getArtifactId(), p.getVersion() );
-
-            projectsMap.put( projectKey, p );
-        }
-
-        for ( MavenProject project : projects )
-        {
-            // MNG-1911 / MNG-5572: Building plugins with extensions cannot be part of reactor
-            for ( Plugin plugin : project.getBuildPlugins() )
+            if ( problem.getSeverity() == ModelProblem.Severity.WARNING )
             {
-                if ( plugin.isExtensions() )
-                {
-                    String pluginKey =
-                        ArtifactUtils.key( plugin.getGroupId(), plugin.getArtifactId(), plugin.getVersion() );
-
-                    if ( projectsMap.containsKey( pluginKey ) )
-                    {
-                        logger.warn( project.getName() + " uses " + plugin.getKey()
-                            + " as extensions, which is not possible within the same reactor build. "
-                            + "This plugin was pulled from the local repository!" );
-                    }
-                }
+                logger.warn( problem.toString() );
             }
-        }
-    }
-
-    private void validateActivatedProfiles( List<MavenProject> projects, List<String> activeProfileIds )
-    {
-        Collection<String> notActivatedProfileIds = new LinkedHashSet<String>( activeProfileIds );
-
-        for ( MavenProject project : projects )
-        {
-            for ( List<String> profileIds : project.getInjectedProfileIds().values() )
+            else
             {
-                notActivatedProfileIds.removeAll( profileIds );
+                logger.error( problem.toString() );
             }
         }
 
-        for ( String notActivatedProfileId : notActivatedProfileIds )
+        if ( !graphResult.hasErrors() )
         {
-            logger.warn( "The requested profile \"" + notActivatedProfileId
-                + "\" could not be activated because it does not exist." );
+            ProjectDependencyGraph projectDependencyGraph = graphResult.get();
+            session.setProjects( projectDependencyGraph.getSortedProjects() );
+            session.setAllProjects( projectDependencyGraph.getSortedProjects() );
+            session.setProjectDependencyGraph( projectDependencyGraph );                
         }
+        
+        return graphResult;        
     }
-
-    @Deprecated // 5 January 2014
+    
+    @Deprecated
+    // 5 January 2014
     protected Logger getLogger()
     {
         return logger;
     }
-
-    private ProjectDependencyGraph createProjectDependencyGraph( Collection<MavenProject> projects,
-                                                                 MavenExecutionRequest request,
-                                                                 MavenExecutionResult result, boolean trimming )
-    {
-        ProjectDependencyGraph projectDependencyGraph = null;
-
-        try
-        {
-            projectDependencyGraph = new DefaultProjectDependencyGraph( projects );
-
-            if ( trimming )
-            {
-                List<MavenProject> activeProjects = projectDependencyGraph.getSortedProjects();
-
-                activeProjects = trimSelectedProjects( activeProjects, projectDependencyGraph, request );
-                activeProjects = trimExcludedProjects( activeProjects,  request );
-                activeProjects = trimResumedProjects( activeProjects, request );
-
-                if ( activeProjects.size() != projectDependencyGraph.getSortedProjects().size() )
-                {
-                    projectDependencyGraph =
-                        new FilteredProjectDependencyGraph( projectDependencyGraph, activeProjects );
-                }
-            }
-        }
-        catch ( CycleDetectedException e )
-        {
-            String message = "The projects in the reactor contain a cyclic reference: " + e.getMessage();
-
-            ProjectCycleException error = new ProjectCycleException( message, e );
-
-            addExceptionToResult( result, error );
-        }
-        catch ( org.apache.maven.project.DuplicateProjectException e )
-        {
-            addExceptionToResult( result, e );
-        }
-        catch ( MavenExecutionException e )
-        {
-            addExceptionToResult( result, e );
-        }
-
-        return projectDependencyGraph;
-    }
-
-    private List<MavenProject> trimSelectedProjects( List<MavenProject> projects, ProjectDependencyGraph graph,
-                                                     MavenExecutionRequest request )
-        throws MavenExecutionException
-    {
-        List<MavenProject> result = projects;
-
-        if ( !request.getSelectedProjects().isEmpty() )
-        {
-            File reactorDirectory = null;
-            if ( request.getBaseDirectory() != null )
-            {
-                reactorDirectory = new File( request.getBaseDirectory() );
-            }
-
-            Collection<MavenProject> selectedProjects = new LinkedHashSet<MavenProject>( projects.size() );
-
-            for ( String selector : request.getSelectedProjects() )
-            {
-                MavenProject selectedProject = null;
-
-                for ( MavenProject project : projects )
-                {
-                    if ( isMatchingProject( project, selector, reactorDirectory ) )
-                    {
-                        selectedProject = project;
-                        break;
-                    }
-                }
-
-                if ( selectedProject != null )
-                {
-                    selectedProjects.add( selectedProject );
-                }
-                else
-                {
-                    throw new MavenExecutionException( "Could not find the selected project in the reactor: "
-                        + selector, request.getPom() );
-                }
-            }
-
-            boolean makeUpstream = false;
-            boolean makeDownstream = false;
-
-            if ( MavenExecutionRequest.REACTOR_MAKE_UPSTREAM.equals( request.getMakeBehavior() ) )
-            {
-                makeUpstream = true;
-            }
-            else if ( MavenExecutionRequest.REACTOR_MAKE_DOWNSTREAM.equals( request.getMakeBehavior() ) )
-            {
-                makeDownstream = true;
-            }
-            else if ( MavenExecutionRequest.REACTOR_MAKE_BOTH.equals( request.getMakeBehavior() ) )
-            {
-                makeUpstream = true;
-                makeDownstream = true;
-            }
-            else if ( StringUtils.isNotEmpty( request.getMakeBehavior() ) )
-            {
-                throw new MavenExecutionException( "Invalid reactor make behavior: " + request.getMakeBehavior(),
-                                                   request.getPom() );
-            }
-
-            if ( makeUpstream || makeDownstream )
-            {
-                for ( MavenProject selectedProject : new ArrayList<MavenProject>( selectedProjects ) )
-                {
-                    if ( makeUpstream )
-                    {
-                        selectedProjects.addAll( graph.getUpstreamProjects( selectedProject, true ) );
-                    }
-                    if ( makeDownstream )
-                    {
-                        selectedProjects.addAll( graph.getDownstreamProjects( selectedProject, true ) );
-                    }
-                }
-            }
-
-            result = new ArrayList<MavenProject>( selectedProjects.size() );
-
-            for ( MavenProject project : projects )
-            {
-                if ( selectedProjects.contains( project ) )
-                {
-                    result.add( project );
-                }
-            }
-        }
-
-        return result;
-    }
-
-    private List<MavenProject> trimExcludedProjects( List<MavenProject> projects, MavenExecutionRequest request )
-        throws MavenExecutionException
-    {
-        List<MavenProject> result = projects;
-
-        if ( !request.getExcludedProjects().isEmpty() )
-        {
-            File reactorDirectory = null;
-
-            if ( request.getBaseDirectory() != null )
-            {
-                reactorDirectory = new File( request.getBaseDirectory() );
-            }
-
-            Collection<MavenProject> excludedProjects = new LinkedHashSet<MavenProject>( projects.size() );
-
-            for ( String selector : request.getExcludedProjects() )
-            {
-                MavenProject excludedProject = null;
-
-                for ( MavenProject project : projects )
-                {
-                    if ( isMatchingProject( project, selector, reactorDirectory ) )
-                    {
-                        excludedProject = project;
-                        break;
-                    }
-                }
-
-                if ( excludedProject != null )
-                {
-                    excludedProjects.add( excludedProject );
-                }
-                else
-                {
-                    throw new MavenExecutionException( "Could not find the selected project in the reactor: "
-                        + selector, request.getPom() );
-                }
-            }
-
-            result = new ArrayList<MavenProject>( projects.size() );
-            for ( MavenProject project : projects )
-            {
-                if ( !excludedProjects.contains( project ) )
-                {
-                    result.add( project );
-                }
-            }
-        }
-
-        return result;
-    }
-
-    private List<MavenProject> trimResumedProjects( List<MavenProject> projects, MavenExecutionRequest request )
-        throws MavenExecutionException
-    {
-        List<MavenProject> result = projects;
-
-        if ( StringUtils.isNotEmpty( request.getResumeFrom() ) )
-        {
-            File reactorDirectory = null;
-            if ( request.getBaseDirectory() != null )
-            {
-                reactorDirectory = new File( request.getBaseDirectory() );
-            }
-
-            String selector = request.getResumeFrom();
-
-            result = new ArrayList<MavenProject>( projects.size() );
-
-            boolean resumed = false;
-
-            for ( MavenProject project : projects )
-            {
-                if ( !resumed && isMatchingProject( project, selector, reactorDirectory ) )
-                {
-                    resumed = true;
-                }
-
-                if ( resumed )
-                {
-                    result.add( project );
-                }
-            }
-
-            if ( !resumed )
-            {
-                throw new MavenExecutionException( "Could not find project to resume reactor build from: " + selector
-                    + " vs " + projects, request.getPom() );
-            }
-        }
-
-        return result;
-    }
-
-    private boolean isMatchingProject( MavenProject project, String selector, File reactorDirectory )
-    {
-        // [groupId]:artifactId
-        if ( selector.indexOf( ':' ) >= 0 )
-        {
-            String id = ':' + project.getArtifactId();
-
-            if ( id.equals( selector ) )
-            {
-                return true;
-            }
-
-            id = project.getGroupId() + id;
-
-            if ( id.equals( selector ) )
-            {
-                return true;
-            }
-        }
-
-        // relative path, e.g. "sub", "../sub" or "."
-        else if ( reactorDirectory != null )
-        {
-            File selectedProject = new File( new File( reactorDirectory, selector ).toURI().normalize() );
-
-            if ( selectedProject.isFile() )
-            {
-                return selectedProject.equals( project.getFile() );
-            }
-            else if ( selectedProject.isDirectory() )
-            {
-                return selectedProject.equals( project.getBasedir() );
-            }
-        }
-
-        return false;
-    }
-
 }

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-core/src/main/java/org/apache/maven/DefaultProjectDependencyGraph.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/DefaultProjectDependencyGraph.java b/maven-core/src/main/java/org/apache/maven/DefaultProjectDependencyGraph.java
deleted file mode 100644
index 4074e58..0000000
--- a/maven-core/src/main/java/org/apache/maven/DefaultProjectDependencyGraph.java
+++ /dev/null
@@ -1,134 +0,0 @@
-package org.apache.maven;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.apache.maven.execution.ProjectDependencyGraph;
-import org.apache.maven.project.DuplicateProjectException;
-import org.apache.maven.project.MavenProject;
-import org.apache.maven.project.ProjectSorter;
-import org.codehaus.plexus.util.dag.CycleDetectedException;
-
-/**
- * Describes the inter-dependencies between projects in the reactor.
- *
- * @author Benjamin Bentmann
- */
-class DefaultProjectDependencyGraph
-    implements ProjectDependencyGraph
-{
-
-    private ProjectSorter sorter;
-
-    /**
-     * Creates a new project dependency graph based on the specified projects.
-     *
-     * @param projects The projects to create the dependency graph with
-     * @throws DuplicateProjectException
-     * @throws CycleDetectedException
-     */
-    public DefaultProjectDependencyGraph( Collection<MavenProject> projects )
-        throws CycleDetectedException, DuplicateProjectException
-    {
-        this.sorter = new ProjectSorter( projects );
-    }
-
-    public List<MavenProject> getSortedProjects()
-    {
-        return new ArrayList<MavenProject>( sorter.getSortedProjects() );
-    }
-
-    public List<MavenProject> getDownstreamProjects( MavenProject project, boolean transitive )
-    {
-        if ( project == null )
-        {
-            throw new IllegalArgumentException( "project missing" );
-        }
-
-        Set<String> projectIds = new HashSet<String>();
-
-        getDownstreamProjects( ProjectSorter.getId( project ), projectIds, transitive );
-
-        return getSortedProjects( projectIds );
-    }
-
-    private void getDownstreamProjects( String projectId, Set<String> projectIds, boolean transitive )
-    {
-        for ( String id : sorter.getDependents( projectId ) )
-        {
-            if ( projectIds.add( id ) && transitive )
-            {
-                getDownstreamProjects( id, projectIds, transitive );
-            }
-        }
-    }
-
-    public List<MavenProject> getUpstreamProjects( MavenProject project, boolean transitive )
-    {
-        if ( project == null )
-        {
-            throw new IllegalArgumentException( "project missing" );
-        }
-
-        Set<String> projectIds = new HashSet<String>();
-
-        getUpstreamProjects( ProjectSorter.getId( project ), projectIds, transitive );
-
-        return getSortedProjects( projectIds );
-    }
-
-    private void getUpstreamProjects( String projectId, Collection<String> projectIds, boolean transitive )
-    {
-        for ( String id : sorter.getDependencies( projectId ) )
-        {
-            if ( projectIds.add( id ) && transitive )
-            {
-                getUpstreamProjects( id, projectIds, transitive );
-            }
-        }
-    }
-
-    private List<MavenProject> getSortedProjects( Set<String> projectIds )
-    {
-        List<MavenProject> result = new ArrayList<MavenProject>( projectIds.size() );
-
-        for ( MavenProject mavenProject : sorter.getSortedProjects() )
-        {
-            if ( projectIds.contains( ProjectSorter.getId( mavenProject ) ) )
-            {
-                result.add( mavenProject );
-            }
-        }
-
-        return result;
-    }
-
-    @Override
-    public String toString()
-    {
-        return sorter.getSortedProjects().toString();
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-core/src/main/java/org/apache/maven/FilteredProjectDependencyGraph.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/FilteredProjectDependencyGraph.java b/maven-core/src/main/java/org/apache/maven/FilteredProjectDependencyGraph.java
deleted file mode 100644
index e5db6bd..0000000
--- a/maven-core/src/main/java/org/apache/maven/FilteredProjectDependencyGraph.java
+++ /dev/null
@@ -1,111 +0,0 @@
-package org.apache.maven;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.IdentityHashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.maven.execution.ProjectDependencyGraph;
-import org.apache.maven.project.MavenProject;
-
-/**
- * Provides a sub view of another dependency graph.
- *
- * @author Benjamin Bentmann
- */
-class FilteredProjectDependencyGraph
-    implements ProjectDependencyGraph
-{
-
-    private ProjectDependencyGraph projectDependencyGraph;
-
-    private Map<MavenProject, ?> whiteList;
-
-    private List<MavenProject> sortedProjects;
-
-    /**
-     * Creates a new project dependency graph from the specified graph.
-     *
-     * @param projectDependencyGraph The project dependency graph to create a sub view from, must not be {@code null}.
-     * @param whiteList The projects on which the dependency view should focus, must not be {@code null}.
-     */
-    public FilteredProjectDependencyGraph( ProjectDependencyGraph projectDependencyGraph,
-                                           Collection<? extends MavenProject> whiteList )
-    {
-        if ( projectDependencyGraph == null )
-        {
-            throw new IllegalArgumentException( "project dependency graph missing" );
-        }
-
-        this.projectDependencyGraph = projectDependencyGraph;
-
-        this.whiteList = new IdentityHashMap<MavenProject, Object>();
-
-        for ( MavenProject project : whiteList )
-        {
-            this.whiteList.put( project, null );
-        }
-    }
-
-    public List<MavenProject> getSortedProjects()
-    {
-        if ( sortedProjects == null )
-        {
-            sortedProjects = applyFilter( projectDependencyGraph.getSortedProjects() );
-        }
-
-        return new ArrayList<MavenProject>( sortedProjects );
-    }
-
-    public List<MavenProject> getDownstreamProjects( MavenProject project, boolean transitive )
-    {
-        return applyFilter( projectDependencyGraph.getDownstreamProjects( project, transitive ) );
-    }
-
-    public List<MavenProject> getUpstreamProjects( MavenProject project, boolean transitive )
-    {
-        return applyFilter( projectDependencyGraph.getUpstreamProjects( project, transitive ) );
-    }
-
-    private List<MavenProject> applyFilter( Collection<? extends MavenProject> projects )
-    {
-        List<MavenProject> filtered = new ArrayList<MavenProject>( projects.size() );
-
-        for ( MavenProject project : projects )
-        {
-            if ( whiteList.containsKey( project ) )
-            {
-                filtered.add( project );
-            }
-        }
-
-        return filtered;
-    }
-
-    @Override
-    public String toString()
-    {
-        return getSortedProjects().toString();
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-core/src/main/java/org/apache/maven/ProjectCycleException.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/ProjectCycleException.java b/maven-core/src/main/java/org/apache/maven/ProjectCycleException.java
index cba4462..ecd8eca 100644
--- a/maven-core/src/main/java/org/apache/maven/ProjectCycleException.java
+++ b/maven-core/src/main/java/org/apache/maven/ProjectCycleException.java
@@ -27,6 +27,11 @@ import org.codehaus.plexus.util.dag.CycleDetectedException;
 public class ProjectCycleException
     extends BuildFailureException
 {
+    public ProjectCycleException( String message )
+    {
+        super( message );
+    }
+    
     public ProjectCycleException( String message, CycleDetectedException cause )
     {
         super( message, cause );

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-core/src/main/java/org/apache/maven/ReactorReader.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/ReactorReader.java b/maven-core/src/main/java/org/apache/maven/ReactorReader.java
index 3aca28d..252bdd0 100644
--- a/maven-core/src/main/java/org/apache/maven/ReactorReader.java
+++ b/maven-core/src/main/java/org/apache/maven/ReactorReader.java
@@ -34,9 +34,10 @@ import javax.inject.Named;
 
 import org.apache.maven.artifact.ArtifactUtils;
 import org.apache.maven.execution.MavenSession;
+import org.apache.maven.model.Model;
 import org.apache.maven.project.MavenProject;
+import org.apache.maven.repository.internal.MavenWorkspaceReader;
 import org.eclipse.aether.artifact.Artifact;
-import org.eclipse.aether.repository.WorkspaceReader;
 import org.eclipse.aether.repository.WorkspaceRepository;
 import org.eclipse.aether.util.artifact.ArtifactIdUtils;
 
@@ -49,7 +50,7 @@ import org.eclipse.aether.util.artifact.ArtifactIdUtils;
 @Named( ReactorReader.HINT )
 @SessionScoped
 class ReactorReader
-    implements WorkspaceReader
+    implements MavenWorkspaceReader
 {
     public static final String HINT = "reactor";
 
@@ -136,6 +137,14 @@ class ReactorReader
         return Collections.unmodifiableList( versions );
     }
 
+    @Override
+    public Model findModel( Artifact artifact )
+    {
+        String projectKey = ArtifactUtils.key( artifact.getGroupId(), artifact.getArtifactId(), artifact.getVersion() );
+        MavenProject project = projectsByGAV.get( projectKey );
+        return project == null ? null : project.getModel();
+    }
+
     //
     // Implementation
     //

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-core/src/main/java/org/apache/maven/execution/MavenSession.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/execution/MavenSession.java b/maven-core/src/main/java/org/apache/maven/execution/MavenSession.java
index e463079..5fdbd07 100644
--- a/maven-core/src/main/java/org/apache/maven/execution/MavenSession.java
+++ b/maven-core/src/main/java/org/apache/maven/execution/MavenSession.java
@@ -271,8 +271,10 @@ public class MavenSession
     {
         this.projectMap = projectMap;
     }
-
-    public Map<String, MavenProject> getProjectMap()
+    
+    @Deprecated
+    /** @deprecated This appears to only be used in the ReactorReader and we can do any processing required there */
+    public Map<String, MavenProject> getProjectMap() 
     {
         return projectMap;
     }
@@ -288,7 +290,7 @@ public class MavenSession
     {
         this.allProjects = allProjects;
     }
-
+    
     /*if_not[MAVEN4]*/
 
     //
@@ -433,5 +435,4 @@ public class MavenSession
     }   
     
     /*end[MAVEN4]*/
-    
 }

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-core/src/main/java/org/apache/maven/graph/DefaultGraphBuilder.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/graph/DefaultGraphBuilder.java b/maven-core/src/main/java/org/apache/maven/graph/DefaultGraphBuilder.java
new file mode 100644
index 0000000..0a602ba
--- /dev/null
+++ b/maven-core/src/main/java/org/apache/maven/graph/DefaultGraphBuilder.java
@@ -0,0 +1,487 @@
+package org.apache.maven.graph;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.LinkedHashSet;
+import java.util.List;
+import java.util.Map;
+
+import org.apache.maven.DefaultMaven;
+import org.apache.maven.MavenExecutionException;
+import org.apache.maven.ProjectCycleException;
+import org.apache.maven.artifact.ArtifactUtils;
+import org.apache.maven.execution.MavenExecutionRequest;
+import org.apache.maven.execution.MavenExecutionResult;
+import org.apache.maven.execution.MavenSession;
+import org.apache.maven.execution.ProjectDependencyGraph;
+import org.apache.maven.model.Plugin;
+import org.apache.maven.model.building.DefaultModelProblem;
+import org.apache.maven.model.building.ModelProblem;
+import org.apache.maven.model.building.ModelProblemUtils;
+import org.apache.maven.model.building.ModelSource;
+import org.apache.maven.model.building.Result;
+import org.apache.maven.model.building.UrlModelSource;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.project.ProjectBuilder;
+import org.apache.maven.project.ProjectBuildingException;
+import org.apache.maven.project.ProjectBuildingRequest;
+import org.apache.maven.project.ProjectBuildingResult;
+import org.codehaus.plexus.component.annotations.Component;
+import org.codehaus.plexus.component.annotations.Requirement;
+import org.codehaus.plexus.logging.Logger;
+import org.codehaus.plexus.util.StringUtils;
+import org.codehaus.plexus.util.dag.CycleDetectedException;
+
+import com.google.common.collect.Lists;
+
+@Component( role = GraphBuilder.class, hint = GraphBuilder.HINT )
+public class DefaultGraphBuilder
+    implements GraphBuilder
+{
+    @Requirement
+    private Logger logger;
+
+    @Requirement
+    protected ProjectBuilder projectBuilder;
+
+    @Override
+    public Result<ProjectDependencyGraph> build( MavenSession session )
+    {
+        if ( session.getProjectDependencyGraph() != null )
+        {
+            return dependencyGraph( session, session.getProjects(), false );
+        }
+        
+        List<MavenProject> projects = session.getProjects();
+
+        if ( projects == null )
+        {
+            try
+            {
+                projects = getProjectsForMavenReactor( session );
+            }
+            catch ( ProjectBuildingException e )
+            {
+                return Result.error( Lists.newArrayList( new DefaultModelProblem( null, null, null, null, 0, 0, e ) ) );
+            }
+
+            validateProjects( projects );
+
+            return dependencyGraph( session, projects, true );
+        }
+        else
+        {
+            return dependencyGraph( session, projects, false );
+        }
+    }
+    
+    private Result<ProjectDependencyGraph> dependencyGraph( MavenSession session, List<MavenProject> projects,
+                                                            boolean applyMakeBehaviour )
+    {
+        MavenExecutionRequest request = session.getRequest();
+
+        ProjectDependencyGraph projectDependencyGraph = null;
+
+        try
+        {
+            projectDependencyGraph = new DefaultProjectDependencyGraph( projects );
+
+            if ( applyMakeBehaviour )
+            {
+                List<MavenProject> activeProjects = projectDependencyGraph.getSortedProjects();
+
+                activeProjects = trimSelectedProjects( activeProjects, projectDependencyGraph, request );
+                activeProjects = trimExcludedProjects( activeProjects, request );
+                activeProjects = trimResumedProjects( activeProjects, request );
+
+                if ( activeProjects.size() != projectDependencyGraph.getSortedProjects().size() )
+                {
+                    projectDependencyGraph = new FilteredProjectDependencyGraph( projectDependencyGraph, activeProjects );
+                }
+            }
+        }
+        catch ( CycleDetectedException e )
+        {
+            String message = "The projects in the reactor contain a cyclic reference: " + e.getMessage();
+            ProjectCycleException error = new ProjectCycleException( message, e );
+            return Result.error( Lists.newArrayList( new DefaultModelProblem( null, null, null, null, 0, 0, error ) ) );
+        }
+        catch ( org.apache.maven.project.DuplicateProjectException e )
+        {
+            return Result.error( Lists.newArrayList( new DefaultModelProblem( null, null, null, null, 0, 0, e ) ) );
+        }
+        catch ( MavenExecutionException e )
+        {
+            return Result.error( Lists.newArrayList( new DefaultModelProblem( null, null, null, null, 0, 0, e ) ) );
+        }
+
+        session.setProjects( projectDependencyGraph.getSortedProjects() );
+        session.setProjectDependencyGraph( projectDependencyGraph );
+
+        return Result.success( projectDependencyGraph );
+    }
+
+    private List<MavenProject> trimSelectedProjects( List<MavenProject> projects, ProjectDependencyGraph graph,
+                                                     MavenExecutionRequest request )
+        throws MavenExecutionException
+    {
+        List<MavenProject> result = projects;
+
+        if ( !request.getSelectedProjects().isEmpty() )
+        {
+            File reactorDirectory = null;
+            if ( request.getBaseDirectory() != null )
+            {
+                reactorDirectory = new File( request.getBaseDirectory() );
+            }
+
+            Collection<MavenProject> selectedProjects = new LinkedHashSet<MavenProject>( projects.size() );
+
+            for ( String selector : request.getSelectedProjects() )
+            {
+                MavenProject selectedProject = null;
+
+                for ( MavenProject project : projects )
+                {
+                    if ( isMatchingProject( project, selector, reactorDirectory ) )
+                    {
+                        selectedProject = project;
+                        break;
+                    }
+                }
+
+                if ( selectedProject != null )
+                {
+                    selectedProjects.add( selectedProject );
+                }
+                else
+                {
+                    throw new MavenExecutionException( "Could not find the selected project in the reactor: "
+                        + selector, request.getPom() );
+                }
+            }
+
+            boolean makeUpstream = false;
+            boolean makeDownstream = false;
+
+            if ( MavenExecutionRequest.REACTOR_MAKE_UPSTREAM.equals( request.getMakeBehavior() ) )
+            {
+                makeUpstream = true;
+            }
+            else if ( MavenExecutionRequest.REACTOR_MAKE_DOWNSTREAM.equals( request.getMakeBehavior() ) )
+            {
+                makeDownstream = true;
+            }
+            else if ( MavenExecutionRequest.REACTOR_MAKE_BOTH.equals( request.getMakeBehavior() ) )
+            {
+                makeUpstream = true;
+                makeDownstream = true;
+            }
+            else if ( StringUtils.isNotEmpty( request.getMakeBehavior() ) )
+            {
+                throw new MavenExecutionException( "Invalid reactor make behavior: " + request.getMakeBehavior(),
+                                                   request.getPom() );
+            }
+
+            if ( makeUpstream || makeDownstream )
+            {
+                for ( MavenProject selectedProject : new ArrayList<MavenProject>( selectedProjects ) )
+                {
+                    if ( makeUpstream )
+                    {
+                        selectedProjects.addAll( graph.getUpstreamProjects( selectedProject, true ) );
+                    }
+                    if ( makeDownstream )
+                    {
+                        selectedProjects.addAll( graph.getDownstreamProjects( selectedProject, true ) );
+                    }
+                }
+            }
+
+            result = new ArrayList<MavenProject>( selectedProjects.size() );
+
+            for ( MavenProject project : projects )
+            {
+                if ( selectedProjects.contains( project ) )
+                {
+                    result.add( project );
+                }
+            }
+        }
+
+        return result;
+    }
+
+    private List<MavenProject> trimExcludedProjects( List<MavenProject> projects, MavenExecutionRequest request )
+        throws MavenExecutionException
+    {
+        List<MavenProject> result = projects;
+
+        if ( !request.getExcludedProjects().isEmpty() )
+        {
+            File reactorDirectory = null;
+
+            if ( request.getBaseDirectory() != null )
+            {
+                reactorDirectory = new File( request.getBaseDirectory() );
+            }
+
+            Collection<MavenProject> excludedProjects = new LinkedHashSet<MavenProject>( projects.size() );
+
+            for ( String selector : request.getExcludedProjects() )
+            {
+                MavenProject excludedProject = null;
+
+                for ( MavenProject project : projects )
+                {
+                    if ( isMatchingProject( project, selector, reactorDirectory ) )
+                    {
+                        excludedProject = project;
+                        break;
+                    }
+                }
+
+                if ( excludedProject != null )
+                {
+                    excludedProjects.add( excludedProject );
+                }
+                else
+                {
+                    throw new MavenExecutionException( "Could not find the selected project in the reactor: "
+                        + selector, request.getPom() );
+                }
+            }
+
+            result = new ArrayList<MavenProject>( projects.size() );
+            for ( MavenProject project : projects )
+            {
+                if ( !excludedProjects.contains( project ) )
+                {
+                    result.add( project );
+                }
+            }
+        }
+
+        return result;
+    }
+
+    private List<MavenProject> trimResumedProjects( List<MavenProject> projects, MavenExecutionRequest request )
+        throws MavenExecutionException
+    {
+        List<MavenProject> result = projects;
+
+        if ( StringUtils.isNotEmpty( request.getResumeFrom() ) )
+        {
+            File reactorDirectory = null;
+            if ( request.getBaseDirectory() != null )
+            {
+                reactorDirectory = new File( request.getBaseDirectory() );
+            }
+
+            String selector = request.getResumeFrom();
+
+            result = new ArrayList<MavenProject>( projects.size() );
+
+            boolean resumed = false;
+
+            for ( MavenProject project : projects )
+            {
+                if ( !resumed && isMatchingProject( project, selector, reactorDirectory ) )
+                {
+                    resumed = true;
+                }
+
+                if ( resumed )
+                {
+                    result.add( project );
+                }
+            }
+
+            if ( !resumed )
+            {
+                throw new MavenExecutionException( "Could not find project to resume reactor build from: " + selector
+                    + " vs " + projects, request.getPom() );
+            }
+        }
+
+        return result;
+    }
+
+    private boolean isMatchingProject( MavenProject project, String selector, File reactorDirectory )
+    {
+        // [groupId]:artifactId
+        if ( selector.indexOf( ':' ) >= 0 )
+        {
+            String id = ':' + project.getArtifactId();
+
+            if ( id.equals( selector ) )
+            {
+                return true;
+            }
+
+            id = project.getGroupId() + id;
+
+            if ( id.equals( selector ) )
+            {
+                return true;
+            }
+        }
+
+        // relative path, e.g. "sub", "../sub" or "."
+        else if ( reactorDirectory != null )
+        {
+            File selectedProject = new File( new File( reactorDirectory, selector ).toURI().normalize() );
+
+            if ( selectedProject.isFile() )
+            {
+                return selectedProject.equals( project.getFile() );
+            }
+            else if ( selectedProject.isDirectory() )
+            {
+                return selectedProject.equals( project.getBasedir() );
+            }
+        }
+
+        return false;
+    }
+
+    private MavenExecutionResult addExceptionToResult( MavenExecutionResult result, Throwable e )
+    {
+        if ( !result.getExceptions().contains( e ) )
+        {
+            result.addException( e );
+        }
+
+        return result;
+    }
+
+    // ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+    //
+    // Project collection
+    //
+    // ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+
+    private List<MavenProject> getProjectsForMavenReactor( MavenSession session )
+        throws ProjectBuildingException
+    {
+        MavenExecutionRequest request = session.getRequest();
+
+        request.getProjectBuildingRequest().setRepositorySession( session.getRepositorySession() );
+
+        List<MavenProject> projects = new ArrayList<MavenProject>();
+
+        // We have no POM file.
+        //
+        if ( request.getPom() == null )
+        {
+            ModelSource modelSource = new UrlModelSource( DefaultMaven.class.getResource( "project/standalone.xml" ) );
+            MavenProject project = projectBuilder.build( modelSource, request.getProjectBuildingRequest() )
+                .getProject();
+            project.setExecutionRoot( true );
+            projects.add( project );
+            request.setProjectPresent( false );
+            return projects;
+        }
+
+        List<File> files = Arrays.asList( request.getPom().getAbsoluteFile() );
+        collectProjects( projects, files, request );
+        return projects;
+    }
+
+    private void collectProjects( List<MavenProject> projects, List<File> files, MavenExecutionRequest request )
+        throws ProjectBuildingException
+    {
+        ProjectBuildingRequest projectBuildingRequest = request.getProjectBuildingRequest();
+
+        List<ProjectBuildingResult> results = projectBuilder.build( files, request.isRecursive(),
+                                                                    projectBuildingRequest );
+
+        boolean problems = false;
+
+        for ( ProjectBuildingResult result : results )
+        {
+            projects.add( result.getProject() );
+
+            if ( !result.getProblems().isEmpty() && logger.isWarnEnabled() )
+            {
+                logger.warn( "" );
+                logger.warn( "Some problems were encountered while building the effective model for "
+                    + result.getProject().getId() );
+
+                for ( ModelProblem problem : result.getProblems() )
+                {
+                    String loc = ModelProblemUtils.formatLocation( problem, result.getProjectId() );
+                    logger.warn( problem.getMessage() + ( StringUtils.isNotEmpty( loc ) ? " @ " + loc : "" ) );
+                }
+
+                problems = true;
+            }
+        }
+
+        if ( problems )
+        {
+            logger.warn( "" );
+            logger.warn( "It is highly recommended to fix these problems"
+                + " because they threaten the stability of your build." );
+            logger.warn( "" );
+            logger.warn( "For this reason, future Maven versions might no"
+                + " longer support building such malformed projects." );
+            logger.warn( "" );
+        }
+    }
+
+    private void validateProjects( List<MavenProject> projects )
+    {
+        Map<String, MavenProject> projectsMap = new HashMap<String, MavenProject>();
+
+        for ( MavenProject p : projects )
+        {
+            String projectKey = ArtifactUtils.key( p.getGroupId(), p.getArtifactId(), p.getVersion() );
+
+            projectsMap.put( projectKey, p );
+        }
+
+        for ( MavenProject project : projects )
+        {
+            // MNG-1911 / MNG-5572: Building plugins with extensions cannot be part of reactor
+            for ( Plugin plugin : project.getBuildPlugins() )
+            {
+                if ( plugin.isExtensions() )
+                {
+                    String pluginKey = ArtifactUtils.key( plugin.getGroupId(), plugin.getArtifactId(),
+                                                          plugin.getVersion() );
+
+                    if ( projectsMap.containsKey( pluginKey ) )
+                    {
+                        logger.warn( project.getName() + " uses " + plugin.getKey()
+                            + " as extensions, which is not possible within the same reactor build. "
+                            + "This plugin was pulled from the local repository!" );
+                    }
+                }
+            }
+        }
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-core/src/main/java/org/apache/maven/graph/DefaultProjectDependencyGraph.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/graph/DefaultProjectDependencyGraph.java b/maven-core/src/main/java/org/apache/maven/graph/DefaultProjectDependencyGraph.java
new file mode 100644
index 0000000..01fec33
--- /dev/null
+++ b/maven-core/src/main/java/org/apache/maven/graph/DefaultProjectDependencyGraph.java
@@ -0,0 +1,134 @@
+package org.apache.maven.graph;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.apache.maven.execution.ProjectDependencyGraph;
+import org.apache.maven.project.DuplicateProjectException;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.project.ProjectSorter;
+import org.codehaus.plexus.util.dag.CycleDetectedException;
+
+/**
+ * Describes the inter-dependencies between projects in the reactor.
+ *
+ * @author Benjamin Bentmann
+ */
+public class DefaultProjectDependencyGraph
+    implements ProjectDependencyGraph
+{
+
+    private ProjectSorter sorter;
+
+    /**
+     * Creates a new project dependency graph based on the specified projects.
+     *
+     * @param projects The projects to create the dependency graph with
+     * @throws DuplicateProjectException
+     * @throws CycleDetectedException
+     */
+    public DefaultProjectDependencyGraph( Collection<MavenProject> projects )
+        throws CycleDetectedException, DuplicateProjectException
+    {
+        this.sorter = new ProjectSorter( projects );
+    }
+
+    public List<MavenProject> getSortedProjects()
+    {
+        return new ArrayList<MavenProject>( sorter.getSortedProjects() );
+    }
+
+    public List<MavenProject> getDownstreamProjects( MavenProject project, boolean transitive )
+    {
+        if ( project == null )
+        {
+            throw new IllegalArgumentException( "project missing" );
+        }
+
+        Set<String> projectIds = new HashSet<String>();
+
+        getDownstreamProjects( ProjectSorter.getId( project ), projectIds, transitive );
+
+        return getSortedProjects( projectIds );
+    }
+
+    private void getDownstreamProjects( String projectId, Set<String> projectIds, boolean transitive )
+    {
+        for ( String id : sorter.getDependents( projectId ) )
+        {
+            if ( projectIds.add( id ) && transitive )
+            {
+                getDownstreamProjects( id, projectIds, transitive );
+            }
+        }
+    }
+
+    public List<MavenProject> getUpstreamProjects( MavenProject project, boolean transitive )
+    {
+        if ( project == null )
+        {
+            throw new IllegalArgumentException( "project missing" );
+        }
+
+        Set<String> projectIds = new HashSet<String>();
+
+        getUpstreamProjects( ProjectSorter.getId( project ), projectIds, transitive );
+
+        return getSortedProjects( projectIds );
+    }
+
+    private void getUpstreamProjects( String projectId, Collection<String> projectIds, boolean transitive )
+    {
+        for ( String id : sorter.getDependencies( projectId ) )
+        {
+            if ( projectIds.add( id ) && transitive )
+            {
+                getUpstreamProjects( id, projectIds, transitive );
+            }
+        }
+    }
+
+    private List<MavenProject> getSortedProjects( Set<String> projectIds )
+    {
+        List<MavenProject> result = new ArrayList<MavenProject>( projectIds.size() );
+
+        for ( MavenProject mavenProject : sorter.getSortedProjects() )
+        {
+            if ( projectIds.contains( ProjectSorter.getId( mavenProject ) ) )
+            {
+                result.add( mavenProject );
+            }
+        }
+
+        return result;
+    }
+
+    @Override
+    public String toString()
+    {
+        return sorter.getSortedProjects().toString();
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-core/src/main/java/org/apache/maven/graph/FilteredProjectDependencyGraph.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/graph/FilteredProjectDependencyGraph.java b/maven-core/src/main/java/org/apache/maven/graph/FilteredProjectDependencyGraph.java
new file mode 100644
index 0000000..662bda4
--- /dev/null
+++ b/maven-core/src/main/java/org/apache/maven/graph/FilteredProjectDependencyGraph.java
@@ -0,0 +1,111 @@
+package org.apache.maven.graph;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.IdentityHashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.apache.maven.execution.ProjectDependencyGraph;
+import org.apache.maven.project.MavenProject;
+
+/**
+ * Provides a sub view of another dependency graph.
+ *
+ * @author Benjamin Bentmann
+ */
+class FilteredProjectDependencyGraph
+    implements ProjectDependencyGraph
+{
+
+    private ProjectDependencyGraph projectDependencyGraph;
+
+    private Map<MavenProject, ?> whiteList;
+
+    private List<MavenProject> sortedProjects;
+
+    /**
+     * Creates a new project dependency graph from the specified graph.
+     *
+     * @param projectDependencyGraph The project dependency graph to create a sub view from, must not be {@code null}.
+     * @param whiteList The projects on which the dependency view should focus, must not be {@code null}.
+     */
+    public FilteredProjectDependencyGraph( ProjectDependencyGraph projectDependencyGraph,
+                                           Collection<? extends MavenProject> whiteList )
+    {
+        if ( projectDependencyGraph == null )
+        {
+            throw new IllegalArgumentException( "project dependency graph missing" );
+        }
+
+        this.projectDependencyGraph = projectDependencyGraph;
+
+        this.whiteList = new IdentityHashMap<MavenProject, Object>();
+
+        for ( MavenProject project : whiteList )
+        {
+            this.whiteList.put( project, null );
+        }
+    }
+
+    public List<MavenProject> getSortedProjects()
+    {
+        if ( sortedProjects == null )
+        {
+            sortedProjects = applyFilter( projectDependencyGraph.getSortedProjects() );
+        }
+
+        return new ArrayList<MavenProject>( sortedProjects );
+    }
+
+    public List<MavenProject> getDownstreamProjects( MavenProject project, boolean transitive )
+    {
+        return applyFilter( projectDependencyGraph.getDownstreamProjects( project, transitive ) );
+    }
+
+    public List<MavenProject> getUpstreamProjects( MavenProject project, boolean transitive )
+    {
+        return applyFilter( projectDependencyGraph.getUpstreamProjects( project, transitive ) );
+    }
+
+    private List<MavenProject> applyFilter( Collection<? extends MavenProject> projects )
+    {
+        List<MavenProject> filtered = new ArrayList<MavenProject>( projects.size() );
+
+        for ( MavenProject project : projects )
+        {
+            if ( whiteList.containsKey( project ) )
+            {
+                filtered.add( project );
+            }
+        }
+
+        return filtered;
+    }
+
+    @Override
+    public String toString()
+    {
+        return getSortedProjects().toString();
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-core/src/main/java/org/apache/maven/graph/GraphBuilder.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/graph/GraphBuilder.java b/maven-core/src/main/java/org/apache/maven/graph/GraphBuilder.java
new file mode 100644
index 0000000..fb7c4f2
--- /dev/null
+++ b/maven-core/src/main/java/org/apache/maven/graph/GraphBuilder.java
@@ -0,0 +1,31 @@
+package org.apache.maven.graph;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.maven.execution.MavenSession;
+import org.apache.maven.execution.ProjectDependencyGraph;
+import org.apache.maven.model.building.Result;
+
+public interface GraphBuilder
+{
+    String HINT = "graphBuilder";
+
+    Result<? extends ProjectDependencyGraph> build( MavenSession session );
+}

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-core/src/main/java/org/apache/maven/project/DefaultModelBuildingListener.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/project/DefaultModelBuildingListener.java b/maven-core/src/main/java/org/apache/maven/project/DefaultModelBuildingListener.java
index 262cf09..a536562 100644
--- a/maven-core/src/main/java/org/apache/maven/project/DefaultModelBuildingListener.java
+++ b/maven-core/src/main/java/org/apache/maven/project/DefaultModelBuildingListener.java
@@ -37,7 +37,7 @@ import org.apache.maven.plugin.version.PluginVersionResolutionException;
  *
  * @author Benjamin Bentmann
  */
-class DefaultModelBuildingListener
+public class DefaultModelBuildingListener
     extends AbstractModelBuildingListener
 {
 

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/project/MavenProject.java b/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
index 641ebda..a14aaa1 100644
--- a/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
+++ b/maven-core/src/main/java/org/apache/maven/project/MavenProject.java
@@ -1171,7 +1171,7 @@ public class MavenProject
         return clone;
     }
 
-    protected void setModel( Model model )
+    public void setModel( Model model )
     {
         this.model = model;
     }

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-core/src/main/java/org/apache/maven/project/ProjectModelResolver.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/project/ProjectModelResolver.java b/maven-core/src/main/java/org/apache/maven/project/ProjectModelResolver.java
index c64dd73..77e7c49 100644
--- a/maven-core/src/main/java/org/apache/maven/project/ProjectModelResolver.java
+++ b/maven-core/src/main/java/org/apache/maven/project/ProjectModelResolver.java
@@ -28,6 +28,7 @@ import java.util.Set;
 
 import com.google.common.base.Predicate;
 import com.google.common.collect.Iterables;
+
 import org.apache.maven.model.Parent;
 import org.apache.maven.model.Repository;
 import org.apache.maven.model.building.FileModelSource;
@@ -55,7 +56,7 @@ import org.eclipse.aether.resolution.VersionRangeResult;
  *
  * @author Benjamin Bentmann
  */
-class ProjectModelResolver
+public class ProjectModelResolver
     implements ModelResolver
 {
 

http://git-wip-us.apache.org/repos/asf/maven/blob/be3fb200/maven-core/src/test/java/org/apache/maven/DefaultProjectDependencyGraphTest.java
----------------------------------------------------------------------
diff --git a/maven-core/src/test/java/org/apache/maven/DefaultProjectDependencyGraphTest.java b/maven-core/src/test/java/org/apache/maven/DefaultProjectDependencyGraphTest.java
deleted file mode 100644
index 668dafb..0000000
--- a/maven-core/src/test/java/org/apache/maven/DefaultProjectDependencyGraphTest.java
+++ /dev/null
@@ -1,172 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
- * agreements. See the NOTICE file distributed with this work for additional information regarding
- * copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance with the License. You may obtain a
- * copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License
- * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied. See the License for the specific language governing permissions and limitations under
- * the License.
- */
-package org.apache.maven;
-
-import junit.framework.TestCase;
-import org.apache.maven.execution.ProjectDependencyGraph;
-import org.apache.maven.model.Dependency;
-import org.apache.maven.project.DuplicateProjectException;
-import org.apache.maven.project.MavenProject;
-import org.codehaus.plexus.util.dag.CycleDetectedException;
-
-import java.util.Arrays;
-import java.util.List;
-
-/**
- * @author Kristian Rosenvold
- */
-public class DefaultProjectDependencyGraphTest
-    extends TestCase
-{
-
-    private final MavenProject aProject = createA();
-
-    private final MavenProject depender1 = createProject( Arrays.asList( toDependency( aProject ) ), "depender1" );
-
-    private final MavenProject depender2 = createProject( Arrays.asList( toDependency( aProject ) ), "depender2" );
-
-    private final MavenProject depender3 = createProject( Arrays.asList( toDependency( aProject ) ), "depender3" );
-
-    private final MavenProject depender4 =
-        createProject( Arrays.asList( toDependency( aProject ), toDependency( depender3 ) ), "depender4" );
-
-    private final MavenProject transitiveOnly =
-        createProject( Arrays.asList( toDependency( depender3 ) ), "depender5" );
-
-    public void testGetSortedProjects()
-        throws DuplicateProjectException, CycleDetectedException
-    {
-        ProjectDependencyGraph graph = new DefaultProjectDependencyGraph( Arrays.asList( depender1, aProject ) );
-        final List<MavenProject> sortedProjects = graph.getSortedProjects();
-        assertEquals( aProject, sortedProjects.get( 0 ) );
-        assertEquals( depender1, sortedProjects.get( 1 ) );
-    }
-
-    public void testVerifyExpectedParentStructure()
-        throws CycleDetectedException, DuplicateProjectException
-    {
-        // This test verifies the baseline structure used in susequent tests. If this fails, the rest will fail.
-        ProjectDependencyGraph graph = threeProjectsDependingOnASingle();
-        final List<MavenProject> sortedProjects = graph.getSortedProjects();
-        assertEquals( aProject, sortedProjects.get( 0 ) );
-        assertEquals( depender1, sortedProjects.get( 1 ) );
-        assertEquals( depender2, sortedProjects.get( 2 ) );
-        assertEquals( depender3, sortedProjects.get( 3 ) );
-    }
-
-    public void testVerifyThatDownsteamProjectsComeInSortedOrder()
-        throws CycleDetectedException, DuplicateProjectException
-    {
-        final List<MavenProject> downstreamProjects =
-            threeProjectsDependingOnASingle().getDownstreamProjects( aProject, true );
-        assertEquals( depender1, downstreamProjects.get( 0 ) );
-        assertEquals( depender2, downstreamProjects.get( 1 ) );
-        assertEquals( depender3, downstreamProjects.get( 2 ) );
-    }
-
-    public void testTransitivesInOrder()
-        throws CycleDetectedException, DuplicateProjectException
-    {
-        final ProjectDependencyGraph graph =
-            new DefaultProjectDependencyGraph( Arrays.asList( depender1, depender4, depender2, depender3, aProject ) );
-
-        final List<MavenProject> downstreamProjects = graph.getDownstreamProjects( aProject, true );
-        assertEquals( depender1, downstreamProjects.get( 0 ) );
-        assertEquals( depender3, downstreamProjects.get( 1 ) );
-        assertEquals( depender4, downstreamProjects.get( 2 ) );
-        assertEquals( depender2, downstreamProjects.get( 3 ) );
-    }
-
-    public void testNonTransitivesInOrder()
-        throws CycleDetectedException, DuplicateProjectException
-    {
-        final ProjectDependencyGraph graph =
-            new DefaultProjectDependencyGraph( Arrays.asList( depender1, depender4, depender2, depender3, aProject ) );
-
-        final List<MavenProject> downstreamProjects = graph.getDownstreamProjects( aProject, false );
-        assertEquals( depender1, downstreamProjects.get( 0 ) );
-        assertEquals( depender3, downstreamProjects.get( 1 ) );
-        assertEquals( depender4, downstreamProjects.get( 2 ) );
-        assertEquals( depender2, downstreamProjects.get( 3 ) );
-    }
-
-    public void testWithTranistiveOnly()
-        throws CycleDetectedException, DuplicateProjectException
-    {
-        final ProjectDependencyGraph graph = new DefaultProjectDependencyGraph(
-            Arrays.asList( depender1, transitiveOnly, depender2, depender3, aProject ) );
-
-        final List<MavenProject> downstreamProjects = graph.getDownstreamProjects( aProject, true );
-        assertEquals( depender1, downstreamProjects.get( 0 ) );
-        assertEquals( depender3, downstreamProjects.get( 1 ) );
-        assertEquals( transitiveOnly, downstreamProjects.get( 2 ) );
-        assertEquals( depender2, downstreamProjects.get( 3 ) );
-    }
-
-    public void testWithMissingTranistiveOnly()
-        throws CycleDetectedException, DuplicateProjectException
-    {
-        final ProjectDependencyGraph graph = new DefaultProjectDependencyGraph(
-            Arrays.asList( depender1, transitiveOnly, depender2, depender3, aProject ) );
-
-        final List<MavenProject> downstreamProjects = graph.getDownstreamProjects( aProject, false );
-        assertEquals( depender1, downstreamProjects.get( 0 ) );
-        assertEquals( depender3, downstreamProjects.get( 1 ) );
-        assertEquals( depender2, downstreamProjects.get( 2 ) );
-    }
-
-    public void testGetUpstreamProjects()
-        throws CycleDetectedException, DuplicateProjectException
-    {
-        ProjectDependencyGraph graph = threeProjectsDependingOnASingle();
-        final List<MavenProject> downstreamProjects = graph.getUpstreamProjects( depender1, true );
-        assertEquals( aProject, downstreamProjects.get( 0 ) );
-    }
-
-    private ProjectDependencyGraph threeProjectsDependingOnASingle()
-        throws CycleDetectedException, DuplicateProjectException
-    {
-        return new DefaultProjectDependencyGraph( Arrays.asList( depender1, depender2, depender3, aProject ) );
-    }
-
-    private static MavenProject createA()
-    {
-        MavenProject result = new MavenProject();
-        result.setGroupId( "org.apache" );
-        result.setArtifactId( "A" );
-        result.setVersion( "1.2" );
-        return result;
-    }
-
-    static Dependency toDependency( MavenProject mavenProject )
-    {
-        final Dependency dependency = new Dependency();
-        dependency.setArtifactId( mavenProject.getArtifactId() );
-        dependency.setGroupId( mavenProject.getGroupId() );
-        dependency.setVersion( mavenProject.getVersion() );
-        return dependency;
-    }
-
-    private static MavenProject createProject( List<Dependency> dependencies, String artifactId )
-    {
-        MavenProject result = new MavenProject();
-        result.setGroupId( "org.apache" );
-        result.setArtifactId( artifactId );
-        result.setVersion( "1.2" );
-        result.setDependencies( dependencies );
-        return result;
-    }
-
-}
\ No newline at end of file


[50/50] [abbrv] maven git commit: Use a custom distribution name to not see this WIP branch built as the official binary

Posted by ah...@apache.org.
Use a custom distribution name to not see this WIP branch built as the official binary


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

Branch: refs/heads/slf4j-log4j2
Commit: baf99442f4b8b3b96fd71ed9148056a0a4b6a745
Parents: dbad2e5
Author: Arnaud Héritier <ah...@apache.org>
Authored: Wed Apr 1 02:17:53 2015 +0200
Committer: Arnaud Héritier <ah...@apache.org>
Committed: Wed Apr 1 02:17:53 2015 +0200

----------------------------------------------------------------------
 build.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/baf99442/build.xml
----------------------------------------------------------------------
diff --git a/build.xml b/build.xml
index 0442a12..2c7cab5 100644
--- a/build.xml
+++ b/build.xml
@@ -34,7 +34,7 @@ END SNIPPET: ant-bootstrap -->
   <property name="distributionDirectory" value="apache-maven"/>
   <property name="distributionId" value="apache-maven"/>
   <property name="distributionShortName" value="Maven"/>
-  <property name="distributionName" value="Apache Maven"/>
+  <property name="distributionName" value="Apache Maven with Logxj II"/>
   <property name="it.workdir.version" value="3.0.x" />
   <property name="maven-compile.jvmargs" value="-Xmx512m -Xms512m"/>
   <property name="maven-compile.fork" value="true"/>


[36/50] [abbrv] maven git commit: MNG-5774 restored MavenCli user/global settings location contants

Posted by ah...@apache.org.
MNG-5774 restored MavenCli user/global settings location contants

Signed-off-by: Igor Fedorenko <if...@apache.org>


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

Branch: refs/heads/slf4j-log4j2
Commit: cc429e84515a2f6bae05cd7cd81c3f622d0c8b57
Parents: eae9a88
Author: Igor Fedorenko <if...@apache.org>
Authored: Wed Mar 11 18:24:14 2015 -0400
Committer: Igor Fedorenko <if...@apache.org>
Committed: Wed Mar 11 18:24:14 2015 -0400

----------------------------------------------------------------------
 .../src/main/java/org/apache/maven/cli/MavenCli.java     | 11 +++++++++++
 1 file changed, 11 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/cc429e84/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java b/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
index ced883c..3966095 100644
--- a/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
+++ b/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
@@ -130,6 +130,17 @@ public class MavenCli
     @SuppressWarnings( "checkstyle:constantname" )
     public static final File userMavenConfigurationHome = new File( userHome, ".m2" );
 
+    /**
+     * @deprecated use {@link SettingsXmlConfigurationProcessor#DEFAULT_USER_SETTINGS_FILE}
+     */
+    public static final File DEFAULT_USER_SETTINGS_FILE = SettingsXmlConfigurationProcessor.DEFAULT_USER_SETTINGS_FILE;
+
+    /**
+     * @deprecated use {@link SettingsXmlConfigurationProcessor#DEFAULT_GLOBAL_SETTINGS_FILE}
+     */
+    public static final File DEFAULT_GLOBAL_SETTINGS_FILE =
+        SettingsXmlConfigurationProcessor.DEFAULT_GLOBAL_SETTINGS_FILE;
+
     public static final File DEFAULT_USER_TOOLCHAINS_FILE = new File( userMavenConfigurationHome, "toolchains.xml" );
 
     public static final File DEFAULT_GLOBAL_TOOLCHAINS_FILE = 


[43/50] [abbrv] maven git commit: ignore .java-version file

Posted by ah...@apache.org.
ignore .java-version file


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

Branch: refs/heads/slf4j-log4j2
Commit: 40858143292dbb514a778322b0c033f7493221a9
Parents: 1d3d2fd
Author: Olivier Lamy <ol...@apache.org>
Authored: Sun Mar 15 22:26:45 2015 +1100
Committer: Olivier Lamy <ol...@apache.org>
Committed: Sun Mar 15 22:26:45 2015 +1100

----------------------------------------------------------------------
 .gitignore | 1 +
 1 file changed, 1 insertion(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/40858143/.gitignore
----------------------------------------------------------------------
diff --git a/.gitignore b/.gitignore
index f8ca4f4..f79c928 100644
--- a/.gitignore
+++ b/.gitignore
@@ -12,3 +12,4 @@ out/
 .DS_Store
 /bootstrap
 /dependencies.xml
+.java-version


[39/50] [abbrv] maven git commit: mvn script is not compatible with OSX (Darwin)

Posted by ah...@apache.org.
mvn script is not compatible with OSX (Darwin)

Signed-off-by: Jason van Zyl <ja...@tesla.io>

closes #39


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

Branch: refs/heads/slf4j-log4j2
Commit: 2f21481d068ddf77d97ecf82ca962537cc6c21bb
Parents: 08715d8
Author: Arcadiy Ivanov <ar...@servicemesh.com>
Authored: Tue Mar 10 03:50:17 2015 -0400
Committer: Jason van Zyl <ja...@tesla.io>
Committed: Fri Mar 13 11:11:35 2015 -0700

----------------------------------------------------------------------
 apache-maven/src/bin/mvn | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/2f21481d/apache-maven/src/bin/mvn
----------------------------------------------------------------------
diff --git a/apache-maven/src/bin/mvn b/apache-maven/src/bin/mvn
index 3ceb5b6..d74125e 100755
--- a/apache-maven/src/bin/mvn
+++ b/apache-maven/src/bin/mvn
@@ -145,7 +145,12 @@ if [ -z "$JAVA_HOME" ]; then
     # readlink(1) is not available as standard on Solaris 10.
     readLink=`which readlink`
     if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
-      javaExecutable="`readlink -f \"$javaExecutable\"`"
+      if $darwin ; then
+        javaHome="`dirname \"$javaExecutable\"`"
+        javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
+      else
+        javaExecutable="`readlink -f \"$javaExecutable\"`"
+      fi
       javaHome="`dirname \"$javaExecutable\"`"
       javaHome=`expr "$javaHome" : '\(.*\)/bin'`
       JAVA_HOME="$javaHome"


[13/50] [abbrv] maven git commit: MNG-5767 .mvn/ for project specific jvm options and maven parameters -- adapted Windows .bat scripts

Posted by ah...@apache.org.
MNG-5767 .mvn/ for project specific jvm options and maven parameters -- adapted Windows .bat scripts


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

Branch: refs/heads/slf4j-log4j2
Commit: 562896a192072b9044a6b2fd37ff31bf638214c8
Parents: e28be4d
Author: Andreas Gudian <ag...@apache.org>
Authored: Wed Feb 25 21:58:29 2015 +0100
Committer: Andreas Gudian <ag...@apache.org>
Committed: Wed Feb 25 21:58:29 2015 +0100

----------------------------------------------------------------------
 apache-maven/src/bin/mvn.bat      | 44 +++++++++++++++++++++++++++-
 apache-maven/src/bin/mvnDebug.bat | 53 ++++++++++++++++++++++++++++++----
 2 files changed, 91 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/562896a1/apache-maven/src/bin/mvn.bat
----------------------------------------------------------------------
diff --git a/apache-maven/src/bin/mvn.bat b/apache-maven/src/bin/mvn.bat
index 9540492..abf793b 100644
--- a/apache-maven/src/bin/mvn.bat
+++ b/apache-maven/src/bin/mvn.bat
@@ -141,6 +141,48 @@ goto Win9xApp
 
 @REM Reaching here means variables are defined and arguments have been captured
 :endInit
+
+@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
+@REM Fallback to current working directory if not found.
+
+set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
+IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
+
+set EXEC_DIR=%CD%
+set WDIR=%EXEC_DIR%
+:findBaseDir
+IF EXIST "%WDIR%"\.mvn goto baseDirFound
+cd ..
+IF "%WDIR%"=="%CD%" goto baseDirNotFound
+set WDIR=%CD%
+goto findBaseDir
+
+:baseDirFound
+set MAVEN_PROJECTBASEDIR=%WDIR%
+cd "%EXEC_DIR%"
+goto endDetectBaseDir
+
+:baseDirNotFound
+set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
+cd "%EXEC_DIR%"
+
+:endDetectBaseDir
+
+IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
+
+if NOT "%OS%"=="Windows_NT" goto Win9xAdditionalConfig
+
+setlocal EnableExtensions EnableDelayedExpansion
+for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
+endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
+goto endReadAdditionalConfig
+
+:Win9xAdditionalConfig
+@REM -- Win9x can only read the first line of the file
+set /P JVM_CONFIG_MAVEN_PROPS=<"%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config"
+ 
+:endReadAdditionalConfig
+
 SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
 
 @REM -- 4NT shell
@@ -158,7 +200,7 @@ goto runm2
 @REM Start MAVEN2
 :runm2
 set CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
-%MAVEN_JAVA_EXE% %MAVEN_OPTS% -classpath %CLASSWORLDS_JAR% "-Dclassworlds.conf=%M2_HOME%\bin\m2.conf" "-Dmaven.home=%M2_HOME%" %CLASSWORLDS_LAUNCHER% %MAVEN_CMD_LINE_ARGS%
+%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% -classpath %CLASSWORLDS_JAR% "-Dclassworlds.conf=%M2_HOME%\bin\m2.conf" "-Dmaven.home=%M2_HOME%" "-Dmaven.projectBasedir=%MAVEN_PROJECTBASEDIR%" %CLASSWORLDS_LAUNCHER% %MAVEN_CMD_LINE_ARGS%
 if ERRORLEVEL 1 goto error
 goto end
 

http://git-wip-us.apache.org/repos/asf/maven/blob/562896a1/apache-maven/src/bin/mvnDebug.bat
----------------------------------------------------------------------
diff --git a/apache-maven/src/bin/mvnDebug.bat b/apache-maven/src/bin/mvnDebug.bat
index b7b42b9..2b2cc18 100644
--- a/apache-maven/src/bin/mvnDebug.bat
+++ b/apache-maven/src/bin/mvnDebug.bat
@@ -62,7 +62,7 @@ if not "%JAVA_HOME%" == "" goto OkJHome
 echo.
 echo Error: JAVA_HOME not found in your environment. >&2
 echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation >&2
+echo location of your Java installation. >&2
 echo.
 goto error
 
@@ -73,7 +73,7 @@ echo.
 echo Error: JAVA_HOME is set to an invalid directory. >&2
 echo JAVA_HOME = "%JAVA_HOME%" >&2
 echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation >&2
+echo location of your Java installation. >&2
 echo.
 goto error
 
@@ -87,7 +87,7 @@ if not "%M2_HOME%"=="" goto valMHome
 echo.
 echo Error: M2_HOME not found in your environment. >&2
 echo Please set the M2_HOME variable in your environment to match the >&2
-echo location of the Maven installation >&2
+echo location of the Maven installation. >&2
 echo.
 goto error
 
@@ -145,6 +145,48 @@ goto Win9xApp
 
 @REM Reaching here means variables are defined and arguments have been captured
 :endInit
+
+@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
+@REM Fallback to current working directory if not found.
+
+set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
+IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
+
+set EXEC_DIR=%CD%
+set WDIR=%EXEC_DIR%
+:findBaseDir
+IF EXIST "%WDIR%"\.mvn goto baseDirFound
+cd ..
+IF "%WDIR%"=="%CD%" goto baseDirNotFound
+set WDIR=%CD%
+goto findBaseDir
+
+:baseDirFound
+set MAVEN_PROJECTBASEDIR=%WDIR%
+cd "%EXEC_DIR%"
+goto endDetectBaseDir
+
+:baseDirNotFound
+set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
+cd "%EXEC_DIR%"
+
+:endDetectBaseDir
+
+IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
+
+if NOT "%OS%"=="Windows_NT" goto Win9xAdditionalConfig
+
+setlocal EnableExtensions EnableDelayedExpansion
+for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
+endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
+goto endReadAdditionalConfig
+
+:Win9xAdditionalConfig
+@REM -- Win9x can only read the first line of the file
+set /P JVM_CONFIG_MAVEN_PROPS=<"%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config"
+ 
+:endReadAdditionalConfig
+
 SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
 
 @REM -- 4NT shell
@@ -162,7 +204,7 @@ goto runm2
 @REM Start MAVEN2
 :runm2
 set CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
-%MAVEN_JAVA_EXE% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %CLASSWORLDS_JAR% "-Dclassworlds.conf=%M2_HOME%\bin\m2.conf" "-Dmaven.home=%M2_HOME%" %CLASSWORLDS_LAUNCHER% %MAVEN_CMD_LINE_ARGS%
+%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %CLASSWORLDS_JAR% "-Dclassworlds.conf=%M2_HOME%\bin\m2.conf" "-Dmaven.home=%M2_HOME%" "-Dmaven.projectBasedir=%MAVEN_PROJECTBASEDIR%" %CLASSWORLDS_LAUNCHER% %MAVEN_CMD_LINE_ARGS%
 if ERRORLEVEL 1 goto error
 goto end
 
@@ -196,5 +238,6 @@ if "%MAVEN_BATCH_PAUSE%" == "on" pause
 
 if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
 
-exit /B %ERROR_CODE%
+cmd /C exit /B %ERROR_CODE%
+
 


[29/50] [abbrv] maven git commit: [MNG-5771] enabled modello xdoc/xsd for core extensions mdo, with minimum intro. Still need to improve descriptions and info in mdo

Posted by ah...@apache.org.
[MNG-5771] enabled modello xdoc/xsd for core extensions mdo, with
minimum intro.
Still need to improve descriptions and info in mdo

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

Branch: refs/heads/slf4j-log4j2
Commit: 5947c4ef71651ba7621ecfa490923bc9d6a34d7d
Parents: 07b8477
Author: Hervé Boutemy <hb...@apache.org>
Authored: Thu Mar 5 21:24:43 2015 +0100
Committer: Hervé Boutemy <hb...@apache.org>
Committed: Fri Mar 6 02:04:17 2015 +0100

----------------------------------------------------------------------
 maven-embedder/pom.xml                          | 19 +++--------------
 maven-embedder/src/main/mdo/core-extensions.mdo | 22 ++++++++++++++++----
 2 files changed, 21 insertions(+), 20 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/5947c4ef/maven-embedder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-embedder/pom.xml b/maven-embedder/pom.xml
index 6700057..7553982 100644
--- a/maven-embedder/pom.xml
+++ b/maven-embedder/pom.xml
@@ -134,23 +134,10 @@
         <artifactId>modello-maven-plugin</artifactId>
         <configuration>
           <version>1.0.0</version>
+          <models>
+            <model>src/main/mdo/core-extensions.mdo</model>
+          </models>
         </configuration>
-        <executions>
-          <execution>
-            <id>standard</id>
-            <configuration>
-              <models>
-                <model>src/main/mdo/core-extensions.mdo</model>
-              </models>
-            </configuration>
-          </execution>
-          <execution>
-            <id>site-docs</id>
-            <configuration>
-              <models/>
-            </configuration>
-          </execution>
-        </executions>
       </plugin>
     </plugins>
   </build>

http://git-wip-us.apache.org/repos/asf/maven/blob/5947c4ef/maven-embedder/src/main/mdo/core-extensions.mdo
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/mdo/core-extensions.mdo b/maven-embedder/src/main/mdo/core-extensions.mdo
index f4b0215..6b75973 100644
--- a/maven-embedder/src/main/mdo/core-extensions.mdo
+++ b/maven-embedder/src/main/mdo/core-extensions.mdo
@@ -20,9 +20,17 @@
 
 -->
 
-<model xmlns="http://modello.codehaus.org/MODELLO/1.4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-  <id>CoreExtensions</id>
-  <name>CoreExtensions</name>
+<model xmlns="http://modello.codehaus.org/MODELLO/1.4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://modello.codehaus.org/MODELLO/1.4.0 http://modello.codehaus.org/xsd/modello-1.4.0.xsd"
+  xml.namespace="http://maven.apache.org/EXTENSIONS/${version}"
+  xml.schemaLocation="http://maven.apache.org/xsd/core-extensions-${version}.xsd">
+
+  <id>core-extensions</id>
+  <name>Core Extensions</name>
+  <description><![CDATA[
+  <p>This is a reference for the Core Extensions descriptor.</p>
+  <p>The default location for the Core Extensions descriptor file is <code>${maven.projectBasedir}/.mvn/extensions.xml</code></p>
+  ]]></description>
 
   <defaults>
     <default>
@@ -32,12 +40,14 @@
   </defaults>
 
   <classes>
-    <class rootElement="true" xml.tagName="extensions">
+    <class rootElement="true" xml.tagName="extensions" xsd.compositor="sequence">
       <name>CoreExtensions</name>
+      <description>Extensions to load.</description>
       <version>1.0.0+</version>
       <fields>
         <field>
           <name>extensions</name>
+          <description>A set of build extensions to use from this project.</description>
           <version>1.0.0+</version>
           <association xml.itemsStyle="flat">
             <type>CoreExtension</type>
@@ -48,22 +58,26 @@
     </class>
     <class xml.tagName="extension">
       <name>CoreExtension</name>
+      <description>Describes a build extension to utilise.</description>
       <version>1.0.0+</version>
       <fields>
         <field>
           <name>groupId</name>
+          <description>The group ID of the extension's artifact.</description>
           <version>1.0.0+</version>
           <required>true</required>
           <type>String</type>
         </field>
         <field>
           <name>artifactId</name>
+          <description>The artifact ID of the extension.</description>
           <version>1.0.0+</version>
           <required>true</required>
           <type>String</type>
         </field>
         <field>
           <name>version</name>
+          <description>The version of the extension.</description>
           <version>1.0.0+</version>
           <required>true</required>
           <type>String</type>


[40/50] [abbrv] maven git commit: Make sure paths with spaces are treated correctly.

Posted by ah...@apache.org.
Make sure paths with spaces are treated correctly.

Fixes the issue of endlessly looping with project directory paths like "/my/project/this & that"


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

Branch: refs/heads/slf4j-log4j2
Commit: 0d32cbe6acd30ed7cbf8ee82039aedc4a946d06e
Parents: 2f21481
Author: Jason van Zyl <ja...@tesla.io>
Authored: Fri Mar 13 12:18:24 2015 -0700
Committer: Jason van Zyl <ja...@tesla.io>
Committed: Fri Mar 13 12:18:24 2015 -0700

----------------------------------------------------------------------
 apache-maven/src/bin/mvn | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/0d32cbe6/apache-maven/src/bin/mvn
----------------------------------------------------------------------
diff --git a/apache-maven/src/bin/mvn b/apache-maven/src/bin/mvn
index d74125e..902de4a 100755
--- a/apache-maven/src/bin/mvn
+++ b/apache-maven/src/bin/mvn
@@ -200,7 +200,7 @@ find_maven_basedir() {
   local basedir=$(pwd)
   local wdir=$(pwd)
   while [ "$wdir" != '/' ] ; do
-    wdir=$(cd $wdir/..; pwd)
+    wdir=$(cd "$wdir/.."; pwd)
     if [ -d "$wdir"/.mvn ] ; then
       basedir=$wdir
       break


[04/50] [abbrv] maven git commit: use eclipse sisu plugin, lock version with rest of sisu

Posted by ah...@apache.org.
use eclipse sisu plugin, lock version with rest of sisu

Signed-off-by: Igor Fedorenko <if...@apache.org>


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

Branch: refs/heads/slf4j-log4j2
Commit: 6b79ac5e33acd79c9aff3036a9a36fdb34ec4600
Parents: 5f15094
Author: Igor Fedorenko <if...@apache.org>
Authored: Thu Feb 12 17:04:14 2015 -0500
Committer: Igor Fedorenko <if...@apache.org>
Committed: Fri Feb 20 10:26:15 2015 -0500

----------------------------------------------------------------------
 maven-core/pom.xml | 11 +----------
 pom.xml            | 13 +++++++++++++
 2 files changed, 14 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/6b79ac5e/maven-core/pom.xml
----------------------------------------------------------------------
diff --git a/maven-core/pom.xml b/maven-core/pom.xml
index 951cd06..f6158d4 100644
--- a/maven-core/pom.xml
+++ b/maven-core/pom.xml
@@ -177,17 +177,8 @@
         <artifactId>plexus-component-metadata</artifactId>
       </plugin>
       <plugin>
-        <groupId>org.sonatype.plugins</groupId>
+        <groupId>org.eclipse.sisu</groupId>
         <artifactId>sisu-maven-plugin</artifactId>
-        <version>1.1</version>
-        <executions>
-          <execution>
-            <goals>
-              <goal>main-index</goal>
-              <goal>test-index</goal>
-            </goals>
-          </execution>
-        </executions>
       </plugin>
       <plugin>
         <groupId>org.codehaus.modello</groupId>

http://git-wip-us.apache.org/repos/asf/maven/blob/6b79ac5e/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index a27d422..06620df 100644
--- a/pom.xml
+++ b/pom.xml
@@ -386,6 +386,19 @@
           </executions>
         </plugin>
         <plugin>
+          <groupId>org.eclipse.sisu</groupId>
+          <artifactId>sisu-maven-plugin</artifactId>
+          <version>${sisuInjectVersion}</version>
+          <executions>
+            <execution>
+              <goals>
+                <goal>main-index</goal>
+                <goal>test-index</goal>
+              </goals>
+            </execution>
+          </executions>
+        </plugin>
+        <plugin>
           <groupId>org.apache.maven.plugins</groupId>
           <artifactId>maven-release-plugin</artifactId>
           <configuration>


[18/50] [abbrv] maven git commit: Make sure the windows *.cmd files make it into the assembly

Posted by ah...@apache.org.
Make sure the windows *.cmd files make it into the assembly


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

Branch: refs/heads/slf4j-log4j2
Commit: 50899962f62e2cc74d1f7990d980235aec786083
Parents: e7f3768
Author: Jason van Zyl <ja...@tesla.io>
Authored: Sat Feb 28 13:41:34 2015 -0800
Committer: Jason van Zyl <ja...@tesla.io>
Committed: Sat Feb 28 13:41:34 2015 -0800

----------------------------------------------------------------------
 apache-maven/src/main/assembly/bin.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/50899962/apache-maven/src/main/assembly/bin.xml
----------------------------------------------------------------------
diff --git a/apache-maven/src/main/assembly/bin.xml b/apache-maven/src/main/assembly/bin.xml
index b2aa900..ea14a9d 100644
--- a/apache-maven/src/main/assembly/bin.xml
+++ b/apache-maven/src/main/assembly/bin.xml
@@ -64,7 +64,7 @@ under the License.
       <directory>src/bin</directory>
       <outputDirectory>bin</outputDirectory>
       <includes>
-        <include>*.bat</include>
+        <include>*.cmd</include>
         <include>*.conf</include>
       </includes>
       <lineEnding>dos</lineEnding>


[07/50] [abbrv] maven git commit: MNG-5772 upgrade to sisu 0.3.0 and sisu guice 3.2.5

Posted by ah...@apache.org.
MNG-5772 upgrade to sisu 0.3.0 and sisu guice 3.2.5

Signed-off-by: Igor Fedorenko <if...@apache.org>


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

Branch: refs/heads/slf4j-log4j2
Commit: bdb4c32ec4acd734d1e385731ae2f67e8ed0d4ac
Parents: 6efacdb
Author: Igor Fedorenko <if...@apache.org>
Authored: Fri Feb 20 14:22:23 2015 -0500
Committer: Igor Fedorenko <if...@apache.org>
Committed: Fri Feb 20 14:22:23 2015 -0500

----------------------------------------------------------------------
 pom.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/bdb4c32e/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 06620df..b1c214c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -52,8 +52,8 @@
     <plexusUtilsVersion>3.0.20</plexusUtilsVersion>
     <!-- Latest version of Guava that works with Sisu -->
     <guavaVersion>18.0</guavaVersion>
-    <guiceVersion>3.2.3</guiceVersion>
-    <sisuInjectVersion>0.3.0.M1</sisuInjectVersion>
+    <guiceVersion>3.2.5</guiceVersion>
+    <sisuInjectVersion>0.3.0</sisuInjectVersion>
     <wagonVersion>2.9-SNAPSHOT</wagonVersion> <!-- Verify SNAPSHOT for MNG-5605 -->
     <securityDispatcherVersion>1.3</securityDispatcherVersion>
     <cipherVersion>1.7</cipherVersion>


[38/50] [abbrv] maven git commit: [MNG-5771] added core extension reference

Posted by ah...@apache.org.
[MNG-5771] added core extension reference

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

Branch: refs/heads/slf4j-log4j2
Commit: 08715d87d92b06aa2845250c0caee5b271cf37c2
Parents: cb356ed
Author: Hervé Boutemy <hb...@apache.org>
Authored: Thu Mar 12 23:20:10 2015 +0100
Committer: Hervé Boutemy <hb...@apache.org>
Committed: Thu Mar 12 23:20:10 2015 +0100

----------------------------------------------------------------------
 maven-embedder/src/site/apt/index.apt.vm | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/08715d87/maven-embedder/src/site/apt/index.apt.vm
----------------------------------------------------------------------
diff --git a/maven-embedder/src/site/apt/index.apt.vm b/maven-embedder/src/site/apt/index.apt.vm
index 4df712c..519fdae 100644
--- a/maven-embedder/src/site/apt/index.apt.vm
+++ b/maven-embedder/src/site/apt/index.apt.vm
@@ -37,4 +37,6 @@ ${project.name}
 
    * <<<.mvn/jvm.config>>> containing jvm options,
 
-   * <<<.mvn/maven.config>>> containing Maven command-line parameter.
+   * <<<.mvn/maven.config>>> containing Maven command-line parameter,
+
+   * <<<.mvn/extensions.xml>>> containing {{{./core-extensions.html}a list of extensions}}.


[14/50] [abbrv] maven git commit: MNG-5767 enforce use of maven.multiModuleProjectDirectory, fixed mvn*.bat

Posted by ah...@apache.org.
MNG-5767 enforce use of maven.multiModuleProjectDirectory, fixed mvn*.bat

Signed-off-by: Igor Fedorenko <if...@apache.org>


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

Branch: refs/heads/slf4j-log4j2
Commit: b01bf0c3d4ba970742a0508ad40c399e45771b70
Parents: 562896a
Author: Igor Fedorenko <if...@apache.org>
Authored: Thu Feb 26 11:45:29 2015 -0500
Committer: Igor Fedorenko <if...@apache.org>
Committed: Thu Feb 26 11:45:29 2015 -0500

----------------------------------------------------------------------
 apache-maven/src/bin/mvn.bat                                  | 2 +-
 apache-maven/src/bin/mvnDebug.bat                             | 2 +-
 .../src/main/java/org/apache/maven/cli/MavenCli.java          | 7 +++++++
 3 files changed, 9 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/b01bf0c3/apache-maven/src/bin/mvn.bat
----------------------------------------------------------------------
diff --git a/apache-maven/src/bin/mvn.bat b/apache-maven/src/bin/mvn.bat
index abf793b..546842a 100644
--- a/apache-maven/src/bin/mvn.bat
+++ b/apache-maven/src/bin/mvn.bat
@@ -200,7 +200,7 @@ goto runm2
 @REM Start MAVEN2
 :runm2
 set CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
-%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% -classpath %CLASSWORLDS_JAR% "-Dclassworlds.conf=%M2_HOME%\bin\m2.conf" "-Dmaven.home=%M2_HOME%" "-Dmaven.projectBasedir=%MAVEN_PROJECTBASEDIR%" %CLASSWORLDS_LAUNCHER% %MAVEN_CMD_LINE_ARGS%
+%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% -classpath %CLASSWORLDS_JAR% "-Dclassworlds.conf=%M2_HOME%\bin\m2.conf" "-Dmaven.home=%M2_HOME%" "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %CLASSWORLDS_LAUNCHER% %MAVEN_CMD_LINE_ARGS%
 if ERRORLEVEL 1 goto error
 goto end
 

http://git-wip-us.apache.org/repos/asf/maven/blob/b01bf0c3/apache-maven/src/bin/mvnDebug.bat
----------------------------------------------------------------------
diff --git a/apache-maven/src/bin/mvnDebug.bat b/apache-maven/src/bin/mvnDebug.bat
index 2b2cc18..6452638 100644
--- a/apache-maven/src/bin/mvnDebug.bat
+++ b/apache-maven/src/bin/mvnDebug.bat
@@ -204,7 +204,7 @@ goto runm2
 @REM Start MAVEN2
 :runm2
 set CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
-%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %CLASSWORLDS_JAR% "-Dclassworlds.conf=%M2_HOME%\bin\m2.conf" "-Dmaven.home=%M2_HOME%" "-Dmaven.projectBasedir=%MAVEN_PROJECTBASEDIR%" %CLASSWORLDS_LAUNCHER% %MAVEN_CMD_LINE_ARGS%
+%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %CLASSWORLDS_JAR% "-Dclassworlds.conf=%M2_HOME%\bin\m2.conf" "-Dmaven.home=%M2_HOME%" "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %CLASSWORLDS_LAUNCHER% %MAVEN_CMD_LINE_ARGS%
 if ERRORLEVEL 1 goto error
 goto end
 

http://git-wip-us.apache.org/repos/asf/maven/blob/b01bf0c3/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java b/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
index cd36832..4e7e072 100644
--- a/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
+++ b/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
@@ -312,6 +312,7 @@ public class MavenCli
     }
 
     void initialize( CliRequest cliRequest )
+        throws ExitException
     {
         if ( cliRequest.workingDirectory == null )
         {
@@ -321,6 +322,12 @@ public class MavenCli
         if ( cliRequest.multiModuleProjectDirectory == null )
         {
             String basedirProperty = System.getProperty( MULTIMODULE_PROJECT_DIRECTORY );
+            if ( basedirProperty == null )
+            {
+                System.err.format( "-D%s system propery is not set."
+                    + " Check $M2_HOME environment variable and mvn script match.", MULTIMODULE_PROJECT_DIRECTORY );
+                throw new ExitException( 1 );
+            }
             File basedir = basedirProperty != null ? new File( basedirProperty ) : new File( "" );
             try
             {


[33/50] [abbrv] maven git commit: upgraded MPIR plugin to benefit from MPIR-322

Posted by ah...@apache.org.
upgraded MPIR plugin to benefit from MPIR-322

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

Branch: refs/heads/slf4j-log4j2
Commit: d8527aa9ce3938d20f49ff49dc3c32d744b22fa2
Parents: b7088a3
Author: Hervé Boutemy <hb...@apache.org>
Authored: Wed Mar 11 09:07:53 2015 +0100
Committer: Hervé Boutemy <hb...@apache.org>
Committed: Wed Mar 11 09:07:53 2015 +0100

----------------------------------------------------------------------
 pom.xml | 5 +++++
 1 file changed, 5 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/d8527aa9/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 94de886..78be1f8 100644
--- a/pom.xml
+++ b/pom.xml
@@ -576,6 +576,11 @@
       <id>reporting</id>
       <reporting>
         <plugins>
+          <plugin><!-- TODO remove when upgrading parent to 27 -->
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-project-info-reports-plugin</artifactId>
+            <version>2.8</version>
+          </plugin>
           <plugin>
             <groupId>org.apache.maven.plugins</groupId>
             <artifactId>maven-javadoc-plugin</artifactId>