You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by hb...@apache.org on 2017/09/25 22:21:41 UTC

[01/23] maven git commit: MNG-6233 don't mix plexus and jsr330 annotations in aether-provider [Forced Update!]

Repository: maven
Updated Branches:
  refs/heads/MNG-6196_slf4j 104b50d4d -> 4f530c4f0 (forced update)


MNG-6233 don't mix plexus and jsr330 annotations in aether-provider

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/66fc74d6
Tree: http://git-wip-us.apache.org/repos/asf/maven/tree/66fc74d6
Diff: http://git-wip-us.apache.org/repos/asf/maven/diff/66fc74d6

Branch: refs/heads/MNG-6196_slf4j
Commit: 66fc74d6296ea0a33f8a9712dc5ed5eb3affd529
Parents: 4463498
Author: Igor Fedorenko <if...@apache.org>
Authored: Tue Mar 28 08:41:38 2017 -0400
Committer: Igor Fedorenko <if...@apache.org>
Committed: Wed May 24 15:33:04 2017 -0400

----------------------------------------------------------------------
 maven-resolver-provider/pom.xml                        |  8 ++------
 .../internal/DefaultArtifactDescriptorReader.java      | 13 +++----------
 .../internal/DefaultVersionRangeResolver.java          |  9 ++-------
 .../repository/internal/DefaultVersionResolver.java    |  9 ++-------
 .../internal/SnapshotMetadataGeneratorFactory.java     |  7 +++++--
 .../internal/VersionsMetadataGeneratorFactory.java     |  7 +++++--
 6 files changed, 19 insertions(+), 34 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/66fc74d6/maven-resolver-provider/pom.xml
----------------------------------------------------------------------
diff --git a/maven-resolver-provider/pom.xml b/maven-resolver-provider/pom.xml
index 0d1b481..53e67e5 100644
--- a/maven-resolver-provider/pom.xml
+++ b/maven-resolver-provider/pom.xml
@@ -64,10 +64,6 @@ under the License.
     </dependency>
     <dependency>
       <groupId>org.codehaus.plexus</groupId>
-      <artifactId>plexus-component-annotations</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.codehaus.plexus</groupId>
       <artifactId>plexus-utils</artifactId>
     </dependency>
     <dependency>
@@ -125,8 +121,8 @@ under the License.
   <build>
     <plugins>
       <plugin>
-        <groupId>org.codehaus.plexus</groupId>
-        <artifactId>plexus-component-metadata</artifactId>
+        <groupId>org.eclipse.sisu</groupId>
+        <artifactId>sisu-maven-plugin</artifactId>
       </plugin>
     </plugins>
   </build>

http://git-wip-us.apache.org/repos/asf/maven/blob/66fc74d6/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java
----------------------------------------------------------------------
diff --git a/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java
index 82e1284..7ccdc05 100644
--- a/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java
+++ b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java
@@ -26,6 +26,7 @@ import java.util.Set;
 
 import javax.inject.Inject;
 import javax.inject.Named;
+import javax.inject.Singleton;
 
 import org.apache.commons.lang3.Validate;
 import org.apache.maven.model.DistributionManagement;
@@ -39,8 +40,6 @@ import org.apache.maven.model.building.ModelBuildingException;
 import org.apache.maven.model.building.ModelBuildingRequest;
 import org.apache.maven.model.building.ModelProblem;
 import org.apache.maven.model.resolution.UnresolvableModelException;
-import org.codehaus.plexus.component.annotations.Component;
-import org.codehaus.plexus.component.annotations.Requirement;
 import org.eclipse.aether.RepositoryEvent;
 import org.eclipse.aether.RepositoryEvent.EventType;
 import org.eclipse.aether.RepositoryException;
@@ -77,31 +76,24 @@ import org.eclipse.aether.transfer.ArtifactNotFoundException;
  * @author Benjamin Bentmann
  */
 @Named
-@Component( role = ArtifactDescriptorReader.class )
+@Singleton
 public class DefaultArtifactDescriptorReader
     implements ArtifactDescriptorReader, Service
 {
 
     @SuppressWarnings( "unused" )
-    @Requirement( role = LoggerFactory.class )
     private Logger logger = NullLoggerFactory.LOGGER;
 
-    @Requirement
     private RemoteRepositoryManager remoteRepositoryManager;
 
-    @Requirement
     private VersionResolver versionResolver;
 
-    @Requirement
     private VersionRangeResolver versionRangeResolver;
 
-    @Requirement
     private ArtifactResolver artifactResolver;
 
-    @Requirement
     private RepositoryEventDispatcher repositoryEventDispatcher;
 
-    @Requirement
     private ModelBuilder modelBuilder;
 
     public DefaultArtifactDescriptorReader()
@@ -117,6 +109,7 @@ public class DefaultArtifactDescriptorReader
     {
         setRemoteRepositoryManager( remoteRepositoryManager );
         setVersionResolver( versionResolver );
+        setVersionRangeResolver( versionRangeResolver );
         setArtifactResolver( artifactResolver );
         setModelBuilder( modelBuilder );
         setLoggerFactory( loggerFactory );

http://git-wip-us.apache.org/repos/asf/maven/blob/66fc74d6/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionRangeResolver.java
----------------------------------------------------------------------
diff --git a/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionRangeResolver.java b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionRangeResolver.java
index c12c9e0..7a8ad9f 100644
--- a/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionRangeResolver.java
+++ b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionRangeResolver.java
@@ -22,8 +22,6 @@ package org.apache.maven.repository.internal;
 import org.apache.commons.lang3.Validate;
 import org.apache.maven.artifact.repository.metadata.Versioning;
 import org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Reader;
-import org.codehaus.plexus.component.annotations.Component;
-import org.codehaus.plexus.component.annotations.Requirement;
 import org.eclipse.aether.RepositoryEvent;
 import org.eclipse.aether.RepositoryEvent.EventType;
 import org.eclipse.aether.RepositorySystemSession;
@@ -56,6 +54,7 @@ import org.eclipse.aether.version.VersionScheme;
 
 import javax.inject.Inject;
 import javax.inject.Named;
+import javax.inject.Singleton;
 
 import java.io.FileInputStream;
 import java.io.InputStream;
@@ -69,7 +68,7 @@ import java.util.Map;
  * @author Benjamin Bentmann
  */
 @Named
-@Component( role = VersionRangeResolver.class )
+@Singleton
 public class DefaultVersionRangeResolver
     implements VersionRangeResolver, Service
 {
@@ -77,16 +76,12 @@ public class DefaultVersionRangeResolver
     private static final String MAVEN_METADATA_XML = "maven-metadata.xml";
 
     @SuppressWarnings( "unused" )
-    @Requirement( role = LoggerFactory.class )
     private Logger logger = NullLoggerFactory.LOGGER;
 
-    @Requirement
     private MetadataResolver metadataResolver;
 
-    @Requirement
     private SyncContextFactory syncContextFactory;
 
-    @Requirement
     private RepositoryEventDispatcher repositoryEventDispatcher;
 
     public DefaultVersionRangeResolver()

http://git-wip-us.apache.org/repos/asf/maven/blob/66fc74d6/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionResolver.java
----------------------------------------------------------------------
diff --git a/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionResolver.java b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionResolver.java
index c23794b..2789640 100644
--- a/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionResolver.java
+++ b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionResolver.java
@@ -24,8 +24,6 @@ import org.apache.maven.artifact.repository.metadata.Snapshot;
 import org.apache.maven.artifact.repository.metadata.SnapshotVersion;
 import org.apache.maven.artifact.repository.metadata.Versioning;
 import org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Reader;
-import org.codehaus.plexus.component.annotations.Component;
-import org.codehaus.plexus.component.annotations.Requirement;
 import org.codehaus.plexus.util.StringUtils;
 import org.eclipse.aether.RepositoryCache;
 import org.eclipse.aether.RepositoryEvent;
@@ -60,6 +58,7 @@ import org.eclipse.aether.util.ConfigUtils;
 
 import javax.inject.Inject;
 import javax.inject.Named;
+import javax.inject.Singleton;
 
 import java.io.File;
 import java.io.FileInputStream;
@@ -75,7 +74,7 @@ import java.util.Map;
  * @author Benjamin Bentmann
  */
 @Named
-@Component( role = VersionResolver.class )
+@Singleton
 public class DefaultVersionResolver
     implements VersionResolver, Service
 {
@@ -89,16 +88,12 @@ public class DefaultVersionResolver
     private static final String SNAPSHOT = "SNAPSHOT";
 
     @SuppressWarnings( "unused" )
-    @Requirement( role = LoggerFactory.class )
     private Logger logger = NullLoggerFactory.LOGGER;
 
-    @Requirement
     private MetadataResolver metadataResolver;
 
-    @Requirement
     private SyncContextFactory syncContextFactory;
 
-    @Requirement
     private RepositoryEventDispatcher repositoryEventDispatcher;
 
     public DefaultVersionResolver()

http://git-wip-us.apache.org/repos/asf/maven/blob/66fc74d6/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/SnapshotMetadataGeneratorFactory.java
----------------------------------------------------------------------
diff --git a/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/SnapshotMetadataGeneratorFactory.java b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/SnapshotMetadataGeneratorFactory.java
index 79ffaad..ba6dadf 100644
--- a/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/SnapshotMetadataGeneratorFactory.java
+++ b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/SnapshotMetadataGeneratorFactory.java
@@ -19,7 +19,9 @@ package org.apache.maven.repository.internal;
  * under the License.
  */
 
-import org.codehaus.plexus.component.annotations.Component;
+import javax.inject.Named;
+import javax.inject.Singleton;
+
 import org.eclipse.aether.RepositorySystemSession;
 import org.eclipse.aether.deployment.DeployRequest;
 import org.eclipse.aether.impl.MetadataGenerator;
@@ -29,7 +31,8 @@ import org.eclipse.aether.installation.InstallRequest;
 /**
  * @author Benjamin Bentmann
  */
-@Component( role = MetadataGeneratorFactory.class, hint = "snapshot" )
+@Named( "snapshot" )
+@Singleton
 public class SnapshotMetadataGeneratorFactory
     implements MetadataGeneratorFactory
 {

http://git-wip-us.apache.org/repos/asf/maven/blob/66fc74d6/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/VersionsMetadataGeneratorFactory.java
----------------------------------------------------------------------
diff --git a/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/VersionsMetadataGeneratorFactory.java b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/VersionsMetadataGeneratorFactory.java
index 47ef360..eae836a 100644
--- a/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/VersionsMetadataGeneratorFactory.java
+++ b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/VersionsMetadataGeneratorFactory.java
@@ -19,7 +19,9 @@ package org.apache.maven.repository.internal;
  * under the License.
  */
 
-import org.codehaus.plexus.component.annotations.Component;
+import javax.inject.Named;
+import javax.inject.Singleton;
+
 import org.eclipse.aether.RepositorySystemSession;
 import org.eclipse.aether.deployment.DeployRequest;
 import org.eclipse.aether.impl.MetadataGenerator;
@@ -29,7 +31,8 @@ import org.eclipse.aether.installation.InstallRequest;
 /**
  * @author Benjamin Bentmann
  */
-@Component( role = MetadataGeneratorFactory.class, hint = "versions" )
+@Named( "versions" )
+@Singleton
 public class VersionsMetadataGeneratorFactory
     implements MetadataGeneratorFactory
 {


[21/23] maven git commit: [MNG-6275] Defang the tests when their core assumption is invalid.

Posted by hb...@apache.org.
[MNG-6275] Defang the tests when their core assumption is invalid.

- The tests assume that the JRE has a ScriptEngineFactory
- Not all JREs have a ScriptEngineFactory (I'm looking at Azul's Zulu Open JDK 7 builds)
- Ideally we'd skip these tests using Assume.assumeThat(...) but PlexusTestCase doesn't support
  AssumptionViolatedException for marking tests as skipped.

Issue identified during testing of the 3.5.1 release candidate


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

Branch: refs/heads/MNG-6196_slf4j
Commit: 542a7a89156263b34d1472e9d9c1a2795afccd2d
Parents: 312eb53
Author: Stephen Connolly <st...@gmail.com>
Authored: Mon Sep 11 10:25:11 2017 +0100
Committer: Stephen Connolly <st...@gmail.com>
Committed: Mon Sep 11 10:25:11 2017 +0100

----------------------------------------------------------------------
 .../classrealm/DefaultClassRealmManagerTest.java    | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/542a7a89/maven-core/src/test/java/org/apache/maven/classrealm/DefaultClassRealmManagerTest.java
----------------------------------------------------------------------
diff --git a/maven-core/src/test/java/org/apache/maven/classrealm/DefaultClassRealmManagerTest.java b/maven-core/src/test/java/org/apache/maven/classrealm/DefaultClassRealmManagerTest.java
index 726199f..6d074b9 100644
--- a/maven-core/src/test/java/org/apache/maven/classrealm/DefaultClassRealmManagerTest.java
+++ b/maven-core/src/test/java/org/apache/maven/classrealm/DefaultClassRealmManagerTest.java
@@ -34,6 +34,7 @@ import org.junit.Test;
 public class DefaultClassRealmManagerTest extends PlexusTestCase
 {
     private ClassRealmManager classRealmManager;
+    private boolean haveScriptEngineFactory;
 
     @Override
     protected void setUp()
@@ -41,6 +42,11 @@ public class DefaultClassRealmManagerTest extends PlexusTestCase
     {
         super.setUp();
         this.classRealmManager = lookup( ClassRealmManager.class );
+        ClassLoader testRealm = getClass().getClassLoader();
+        ServiceLoader<ScriptEngineFactory> sef = ServiceLoader.load( ScriptEngineFactory.class, testRealm );
+        // TODO switch to Assume.assumeTrue( sef.iterator().hasNext() ) when PlexusTestCase
+        // supports assumptions. Not every Java 7 JRE has a ScriptEngineFactory.
+        this.haveScriptEngineFactory = sef.iterator().hasNext();
     }
 
     @Override
@@ -59,7 +65,7 @@ public class DefaultClassRealmManagerTest extends PlexusTestCase
         
         ClassRealm pluginRealm = classRealmManager.createPluginRealm( plugin, parent, null, null, null );
         ServiceLoader<ScriptEngineFactory> sef = ServiceLoader.load( ScriptEngineFactory.class, pluginRealm );
-        assertTrue( sef.iterator().hasNext() );
+        assertEquals( haveScriptEngineFactory, sef.iterator().hasNext() );
     }
 
     @Test
@@ -70,7 +76,7 @@ public class DefaultClassRealmManagerTest extends PlexusTestCase
         
         ClassRealm extensionRealm = classRealmManager.createExtensionRealm( extension, null );
         ServiceLoader<ScriptEngineFactory> sef = ServiceLoader.load( ScriptEngineFactory.class, extensionRealm );
-        assertTrue( sef.iterator().hasNext() );
+        assertEquals( haveScriptEngineFactory, sef.iterator().hasNext() );
     }
 
     @Test
@@ -80,7 +86,7 @@ public class DefaultClassRealmManagerTest extends PlexusTestCase
         
         ClassRealm projectRealm = classRealmManager.createProjectRealm( model, null );
         ServiceLoader<ScriptEngineFactory> sef = ServiceLoader.load( ScriptEngineFactory.class, projectRealm );
-        assertTrue( sef.iterator().hasNext() );
+        assertEquals( haveScriptEngineFactory, sef.iterator().hasNext() );
     }
 
     @Test
@@ -88,7 +94,7 @@ public class DefaultClassRealmManagerTest extends PlexusTestCase
     {
         ClassRealm mavenApiRealm = classRealmManager.getMavenApiRealm();
         ServiceLoader<ScriptEngineFactory> sef = ServiceLoader.load( ScriptEngineFactory.class, mavenApiRealm );
-        assertTrue( sef.iterator().hasNext() );
+        assertEquals( haveScriptEngineFactory, sef.iterator().hasNext() );
     }
 
     @Test
@@ -96,6 +102,6 @@ public class DefaultClassRealmManagerTest extends PlexusTestCase
     {
         ClassRealm coreRealm = classRealmManager.getCoreRealm();
         ServiceLoader<ScriptEngineFactory> sef = ServiceLoader.load( ScriptEngineFactory.class, coreRealm );
-        assertTrue( sef.iterator().hasNext() );
+        assertEquals( haveScriptEngineFactory, sef.iterator().hasNext() );
     }
 }


[16/23] maven git commit: Revert "Squashed commit of the following:"

Posted by hb...@apache.org.
Revert "Squashed commit of the following:"

This reverts commit f047ea143766fd22ae42040e6805bef287f3cc3e.


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

Branch: refs/heads/MNG-6196_slf4j
Commit: 170c1ed82cbe124da1736da64af20d660dc3162e
Parents: e44c39c
Author: rfscholte <rf...@apache.org>
Authored: Wed Aug 30 11:12:20 2017 +0200
Committer: rfscholte <rf...@apache.org>
Committed: Wed Aug 30 11:12:20 2017 +0200

----------------------------------------------------------------------
 .../classrealm/DefaultClassRealmManager.java    |   2 +-
 .../DefaultClassRealmManagerTest.java           | 101 -------------------
 2 files changed, 1 insertion(+), 102 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/170c1ed8/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 d517924..6ce1925 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
@@ -120,7 +120,7 @@ public class DefaultClassRealmManager
             {
                 try
                 {
-                    ClassRealm classRealm = world.newRealm( realmId, ClassLoader.getSystemClassLoader() );
+                    ClassRealm classRealm = world.newRealm( realmId, null );
 
                     if ( logger.isDebugEnabled() )
                     {

http://git-wip-us.apache.org/repos/asf/maven/blob/170c1ed8/maven-core/src/test/java/org/apache/maven/classrealm/DefaultClassRealmManagerTest.java
----------------------------------------------------------------------
diff --git a/maven-core/src/test/java/org/apache/maven/classrealm/DefaultClassRealmManagerTest.java b/maven-core/src/test/java/org/apache/maven/classrealm/DefaultClassRealmManagerTest.java
deleted file mode 100644
index 726199f..0000000
--- a/maven-core/src/test/java/org/apache/maven/classrealm/DefaultClassRealmManagerTest.java
+++ /dev/null
@@ -1,101 +0,0 @@
-package org.apache.maven.classrealm;
-
-/*
- * 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.ServiceLoader;
-
-import javax.script.ScriptEngineFactory;
-
-import org.apache.maven.model.Model;
-import org.apache.maven.model.Plugin;
-import org.codehaus.plexus.ContainerConfiguration;
-import org.codehaus.plexus.PlexusConstants;
-import org.codehaus.plexus.PlexusTestCase;
-import org.codehaus.plexus.classworlds.realm.ClassRealm;
-import org.junit.Test;
-
-public class DefaultClassRealmManagerTest extends PlexusTestCase
-{
-    private ClassRealmManager classRealmManager;
-
-    @Override
-    protected void setUp()
-        throws Exception
-    {
-        super.setUp();
-        this.classRealmManager = lookup( ClassRealmManager.class );
-    }
-
-    @Override
-    protected void customizeContainerConfiguration( ContainerConfiguration configuration )
-    {
-        configuration.setClassPathScanning( PlexusConstants.SCANNING_INDEX );
-    }
-
-    @Test
-    public void testMNG6275_pluginRealmDefaultParentClassLoader()
-    {
-        Plugin plugin = new Plugin();
-        plugin.setVersion( "VERSION" );
-        
-        ClassLoader parent = null;
-        
-        ClassRealm pluginRealm = classRealmManager.createPluginRealm( plugin, parent, null, null, null );
-        ServiceLoader<ScriptEngineFactory> sef = ServiceLoader.load( ScriptEngineFactory.class, pluginRealm );
-        assertTrue( sef.iterator().hasNext() );
-    }
-
-    @Test
-    public void testMNG6275_extensionRealmDefaultParentClassLoader()
-    {
-        Plugin extension = new Plugin();
-        extension.setVersion( "VERSION" );
-        
-        ClassRealm extensionRealm = classRealmManager.createExtensionRealm( extension, null );
-        ServiceLoader<ScriptEngineFactory> sef = ServiceLoader.load( ScriptEngineFactory.class, extensionRealm );
-        assertTrue( sef.iterator().hasNext() );
-    }
-
-    @Test
-    public void testMNG6275_projectRealmDefaultParentClassLoader()
-    {
-        Model model = new Model();
-        
-        ClassRealm projectRealm = classRealmManager.createProjectRealm( model, null );
-        ServiceLoader<ScriptEngineFactory> sef = ServiceLoader.load( ScriptEngineFactory.class, projectRealm );
-        assertTrue( sef.iterator().hasNext() );
-    }
-
-    @Test
-    public void testMNG6275_mavenApiRealmDefaultParentClassLoader()
-    {
-        ClassRealm mavenApiRealm = classRealmManager.getMavenApiRealm();
-        ServiceLoader<ScriptEngineFactory> sef = ServiceLoader.load( ScriptEngineFactory.class, mavenApiRealm );
-        assertTrue( sef.iterator().hasNext() );
-    }
-
-    @Test
-    public void testMNG6275_coreRealmDefaultParentClassLoader()
-    {
-        ClassRealm coreRealm = classRealmManager.getCoreRealm();
-        ServiceLoader<ScriptEngineFactory> sef = ServiceLoader.load( ScriptEngineFactory.class, coreRealm );
-        assertTrue( sef.iterator().hasNext() );
-    }
-}


[19/23] maven git commit: [maven-release-plugin] prepare release maven-3.5.1

Posted by hb...@apache.org.
[maven-release-plugin] prepare release maven-3.5.1


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

Branch: refs/heads/MNG-6196_slf4j
Commit: 094e4e31a5af55bb17be87675da41d9aeca062f3
Parents: 27a2bda
Author: Stephen Connolly <st...@gmail.com>
Authored: Sun Sep 10 12:51:26 2017 +0100
Committer: Stephen Connolly <st...@gmail.com>
Committed: Sun Sep 10 12:51:26 2017 +0100

----------------------------------------------------------------------
 apache-maven/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-resolver-provider/pom.xml   | 2 +-
 maven-settings-builder/pom.xml    | 2 +-
 maven-settings/pom.xml            | 2 +-
 maven-slf4j-provider/pom.xml      | 2 +-
 pom.xml                           | 4 ++--
 15 files changed, 16 insertions(+), 16 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/094e4e31/apache-maven/pom.xml
----------------------------------------------------------------------
diff --git a/apache-maven/pom.xml b/apache-maven/pom.xml
index b286f74..eb97543 100644
--- a/apache-maven/pom.xml
+++ b/apache-maven/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.5.1-SNAPSHOT</version>
+    <version>3.5.1</version>
   </parent>
 
   <artifactId>apache-maven</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/094e4e31/maven-artifact/pom.xml
----------------------------------------------------------------------
diff --git a/maven-artifact/pom.xml b/maven-artifact/pom.xml
index b13482b..8a978a8 100644
--- a/maven-artifact/pom.xml
+++ b/maven-artifact/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.5.1-SNAPSHOT</version>
+    <version>3.5.1</version>
   </parent>
 
   <artifactId>maven-artifact</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/094e4e31/maven-builder-support/pom.xml
----------------------------------------------------------------------
diff --git a/maven-builder-support/pom.xml b/maven-builder-support/pom.xml
index 9557731..02682ab 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.5.1-SNAPSHOT</version>
+    <version>3.5.1</version>
   </parent>
 
   <artifactId>maven-builder-support</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/094e4e31/maven-compat/pom.xml
----------------------------------------------------------------------
diff --git a/maven-compat/pom.xml b/maven-compat/pom.xml
index b3cf039..9d3542e 100644
--- a/maven-compat/pom.xml
+++ b/maven-compat/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.5.1-SNAPSHOT</version>
+    <version>3.5.1</version>
   </parent>
 
   <artifactId>maven-compat</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/094e4e31/maven-core/pom.xml
----------------------------------------------------------------------
diff --git a/maven-core/pom.xml b/maven-core/pom.xml
index 6cd8d85..78a7dc6 100644
--- a/maven-core/pom.xml
+++ b/maven-core/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.5.1-SNAPSHOT</version>
+    <version>3.5.1</version>
   </parent>
 
   <artifactId>maven-core</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/094e4e31/maven-embedder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-embedder/pom.xml b/maven-embedder/pom.xml
index 4b3d097..b759470 100644
--- a/maven-embedder/pom.xml
+++ b/maven-embedder/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.5.1-SNAPSHOT</version>
+    <version>3.5.1</version>
   </parent>
 
   <artifactId>maven-embedder</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/094e4e31/maven-model-builder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-model-builder/pom.xml b/maven-model-builder/pom.xml
index eb86824..d44ff50 100644
--- a/maven-model-builder/pom.xml
+++ b/maven-model-builder/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.5.1-SNAPSHOT</version>
+    <version>3.5.1</version>
   </parent>
 
   <artifactId>maven-model-builder</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/094e4e31/maven-model/pom.xml
----------------------------------------------------------------------
diff --git a/maven-model/pom.xml b/maven-model/pom.xml
index 581e927..a321d35 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.5.1-SNAPSHOT</version>
+    <version>3.5.1</version>
   </parent>
 
   <artifactId>maven-model</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/094e4e31/maven-plugin-api/pom.xml
----------------------------------------------------------------------
diff --git a/maven-plugin-api/pom.xml b/maven-plugin-api/pom.xml
index 271404f..9e81210 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.5.1-SNAPSHOT</version>
+    <version>3.5.1</version>
   </parent>
 
   <artifactId>maven-plugin-api</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/094e4e31/maven-repository-metadata/pom.xml
----------------------------------------------------------------------
diff --git a/maven-repository-metadata/pom.xml b/maven-repository-metadata/pom.xml
index dcc6a22..18c23bf 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.5.1-SNAPSHOT</version>
+    <version>3.5.1</version>
   </parent>
 
   <artifactId>maven-repository-metadata</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/094e4e31/maven-resolver-provider/pom.xml
----------------------------------------------------------------------
diff --git a/maven-resolver-provider/pom.xml b/maven-resolver-provider/pom.xml
index 53e67e5..c78fde1 100644
--- a/maven-resolver-provider/pom.xml
+++ b/maven-resolver-provider/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.5.1-SNAPSHOT</version>
+    <version>3.5.1</version>
   </parent>
 
   <artifactId>maven-resolver-provider</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/094e4e31/maven-settings-builder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-settings-builder/pom.xml b/maven-settings-builder/pom.xml
index 904b085..dd60239 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.5.1-SNAPSHOT</version>
+    <version>3.5.1</version>
   </parent>
 
   <artifactId>maven-settings-builder</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/094e4e31/maven-settings/pom.xml
----------------------------------------------------------------------
diff --git a/maven-settings/pom.xml b/maven-settings/pom.xml
index eb4ad22..cd00975 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.5.1-SNAPSHOT</version>
+    <version>3.5.1</version>
   </parent>
 
   <artifactId>maven-settings</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/094e4e31/maven-slf4j-provider/pom.xml
----------------------------------------------------------------------
diff --git a/maven-slf4j-provider/pom.xml b/maven-slf4j-provider/pom.xml
index 315b9a7..e7fdf96 100644
--- a/maven-slf4j-provider/pom.xml
+++ b/maven-slf4j-provider/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.5.1-SNAPSHOT</version>
+    <version>3.5.1</version>
   </parent>
 
   <artifactId>maven-slf4j-provider</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/094e4e31/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 761edbf..2c97f6b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -30,7 +30,7 @@ under the License.
   </parent>
 
   <artifactId>maven</artifactId>
-  <version>3.5.1-SNAPSHOT</version>
+  <version>3.5.1</version>
   <packaging>pom</packaging>
 
   <name>Apache Maven</name>
@@ -98,7 +98,7 @@ under the License.
     <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.5.1</tag>
   </scm>
   <issueManagement>
     <system>jira</system>


[05/23] maven git commit: [MNG-6207] Create WARNINGs in case of using system scope o display deprecation build warning for dependencies with scope 'system' declaration o Note about tests: existing 'systemPath' related tests are reused/expanded (rati

Posted by hb...@apache.org.
[MNG-6207] Create WARNINGs in case of using system scope
 o display deprecation build warning for dependencies with scope 'system' declaration
 o Note about tests: existing 'systemPath' related tests are reused/expanded
   (rationale: scope 'system' and 'systemPath' are mutually dependent)

Signed-off-by: Karl Heinz Marbaise <kh...@apache.org>


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

Branch: refs/heads/MNG-6196_slf4j
Commit: 12d6471337c7ad067b7762d44050a079829ea26c
Parents: 707cff6
Author: dejan2609 <de...@gmail.com>
Authored: Sat May 20 15:42:43 2017 +0200
Committer: Karl Heinz Marbaise <kh...@apache.org>
Committed: Sun Jun 11 13:55:07 2017 +0200

----------------------------------------------------------------------
 .../model/validation/DefaultModelValidator.java | 14 +++++---
 .../validation/DefaultModelValidatorTest.java   | 36 +++++++++++++++++---
 2 files changed, 41 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/12d64713/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 f46be0e..2e7985f 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
@@ -467,6 +467,13 @@ public class DefaultModelValidator
             }
             else if ( "system".equals( dependency.getScope() ) )
             {
+
+                if ( request.getValidationLevel() >= ModelBuildingRequest.VALIDATION_LEVEL_MAVEN_3_1 )
+                {
+                    addViolation( problems, Severity.WARNING, Version.V31, prefix + ".scope", key,
+                                  "declares usage of deprecated 'system' scope ", dependency );
+                }
+
                 String sysPath = dependency.getSystemPath();
                 if ( StringUtils.isNotEmpty( sysPath ) )
                 {
@@ -488,7 +495,7 @@ public class DefaultModelValidator
             if ( equals( "LATEST", dependency.getVersion() ) || equals( "RELEASE", dependency.getVersion() ) )
             {
                 addViolation( problems, Severity.WARNING, Version.BASE, prefix + ".version", key,
-                        "is either LATEST or RELEASE (both of them are being deprecated)", dependency );
+                              "is either LATEST or RELEASE (both of them are being deprecated)", dependency );
             }
 
             Dependency existing = index.get( key );
@@ -1034,9 +1041,8 @@ public class DefaultModelValidator
         buffer.append( ' ' ).append( message );
 
         // CHECKSTYLE_OFF: LineLength
-        problems.add( new ModelProblemCollectorRequest( severity,
-                                                        version ).setMessage( buffer.toString() ).setLocation( getLocation( fieldName,
-                                                                                                                            tracker ) ) );
+        problems.add( new ModelProblemCollectorRequest( severity, version ).setMessage(
+                                                                                        buffer.toString() ).setLocation( getLocation( fieldName, tracker ) ) );
         // CHECKSTYLE_ON: LineLength
     }
 

http://git-wip-us.apache.org/repos/asf/maven/blob/12d64713/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 bb99be9..4da3c87 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
@@ -418,7 +418,20 @@ public class DefaultModelValidatorTest
 
         assertViolations( result, 0, 0, 1 );
 
-        assertTrue( result.getWarnings().get( 0 ).contains( "test:a:jar" ) );
+        assertContains( result.getWarnings().get( 0 ),
+                "'dependencies.dependency.systemPath' for test:a:jar should use a variable instead of a hard-coded path" );
+
+        SimpleProblemCollector result_31 = validateRaw( "hard-coded-system-path.xml", ModelBuildingRequest.VALIDATION_LEVEL_MAVEN_3_1 );
+
+        assertViolations( result_31, 0, 0, 3 );
+
+        assertContains( result_31.getWarnings().get( 0 ),
+                "'dependencies.dependency.scope' for test:a:jar declares usage of deprecated 'system' scope" );
+        assertContains( result_31.getWarnings().get( 1 ),
+                "'dependencies.dependency.systemPath' for test:a:jar should use a variable instead of a hard-coded path" );
+        assertContains( result_31.getWarnings().get( 2 ),
+                "'dependencies.dependency.scope' for test:b:jar declares usage of deprecated 'system' scope" );
+
     }
 
     public void testEmptyModule()
@@ -611,10 +624,23 @@ public class DefaultModelValidatorTest
 
         assertViolations( result, 0, 0, 2 );
 
-        assertContains( result.getWarnings().get( 0 ), "'dependencies.dependency.systemPath' for test:a:jar "
-            + "should not point at files within the project directory" );
-        assertContains( result.getWarnings().get( 1 ), "'dependencies.dependency.systemPath' for test:b:jar "
-            + "should not point at files within the project directory" );
+        assertContains( result.getWarnings().get( 0 ),
+                "'dependencies.dependency.systemPath' for test:a:jar should not point at files within the project directory" );
+        assertContains( result.getWarnings().get( 1 ),
+                "'dependencies.dependency.systemPath' for test:b:jar should not point at files within the project directory" );
+
+        SimpleProblemCollector result_31 = validateRaw( "basedir-system-path.xml", ModelBuildingRequest.VALIDATION_LEVEL_MAVEN_3_1 );
+
+        assertViolations( result_31, 0, 0, 4 );
+
+        assertContains( result_31.getWarnings().get( 0 ),
+                "'dependencies.dependency.scope' for test:a:jar declares usage of deprecated 'system' scope" );
+        assertContains( result_31.getWarnings().get( 1 ),
+                "'dependencies.dependency.systemPath' for test:a:jar should not point at files within the project directory" );
+        assertContains( result_31.getWarnings().get( 2 ),
+                "'dependencies.dependency.scope' for test:b:jar declares usage of deprecated 'system' scope" );
+        assertContains( result_31.getWarnings().get( 3 ),
+                "'dependencies.dependency.systemPath' for test:b:jar should not point at files within the project directory" );
     }
 
     public void testInvalidVersionInPluginManagement()


[13/23] maven git commit: [MNG-6220] Add CLI options to control color output Introduce -Dstyle.color=[always|never|auto]

Posted by hb...@apache.org.
[MNG-6220] Add CLI options to control color output
Introduce -Dstyle.color=[always|never|auto]


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

Branch: refs/heads/MNG-6196_slf4j
Commit: 785bad693c60ad60d7b307af8fab9e9234ff57bd
Parents: f1ed659
Author: rfscholte <rf...@apache.org>
Authored: Tue Aug 15 21:48:57 2017 +0200
Committer: rfscholte <rf...@apache.org>
Committed: Tue Aug 15 21:48:57 2017 +0200

----------------------------------------------------------------------
 maven-embedder/pom.xml                          |  5 ++
 .../java/org/apache/maven/cli/MavenCli.java     | 28 +++++--
 .../java/org/apache/maven/cli/MavenCliTest.java | 86 ++++++++++++++++++--
 3 files changed, 107 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/785bad69/maven-embedder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-embedder/pom.xml b/maven-embedder/pom.xml
index 7bd2650..4b3d097 100644
--- a/maven-embedder/pom.xml
+++ b/maven-embedder/pom.xml
@@ -138,6 +138,11 @@ under the License.
       <groupId>org.apache.commons</groupId>
       <artifactId>commons-lang3</artifactId>
     </dependency>
+    <dependency>
+      <groupId>org.fusesource.jansi</groupId>
+      <artifactId>jansi</artifactId>
+      <scope>test</scope>
+    </dependency>
   </dependencies>
 
   <build>

http://git-wip-us.apache.org/repos/asf/maven/blob/785bad69/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 641a2a9..3474fab 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
@@ -144,6 +144,8 @@ public class MavenCli
 
     private static final String MVN_MAVEN_CONFIG = ".mvn/maven.config";
 
+    public static final String STYLE_COLOR_PROPERTY = "style.color";
+
     private ClassWorld classWorld;
 
     private LoggerManager plexusLoggerManager;
@@ -472,8 +474,9 @@ public class MavenCli
     /**
      * configure logging
      */
-    private void logging( CliRequest cliRequest )
+    void logging( CliRequest cliRequest )
     {
+        // LOG LEVEL
         cliRequest.debug = cliRequest.commandLine.hasOption( CLIManager.DEBUG );
         cliRequest.quiet = !cliRequest.debug && cliRequest.commandLine.hasOption( CLIManager.QUIET );
         cliRequest.showErrors = cliRequest.debug || cliRequest.commandLine.hasOption( CLIManager.ERRORS );
@@ -494,18 +497,33 @@ public class MavenCli
         // else fall back to default log level specified in conf
         // see https://issues.apache.org/jira/browse/MNG-2570
 
-        if ( cliRequest.commandLine.hasOption( CLIManager.BATCH_MODE ) )
+        // LOG COLOR
+        String styleColor = cliRequest.getUserProperties().getProperty( STYLE_COLOR_PROPERTY, "auto" );
+        if ( "always".equals( styleColor ) )
+        {
+            MessageUtils.setColorEnabled( true );
+        }
+        else if ( "never".equals( styleColor ) )
         {
             MessageUtils.setColorEnabled( false );
         }
-
+        else if ( !"auto".equals( styleColor ) )
+        {
+            throw new IllegalArgumentException( "Invalid color configuration option [" + styleColor
+                + "]. Supported values are (auto|always|never)." );
+        }
+        else if ( cliRequest.commandLine.hasOption( CLIManager.BATCH_MODE )
+            || cliRequest.commandLine.hasOption( CLIManager.LOG_FILE ) )
+        {
+            MessageUtils.setColorEnabled( false );
+        }
+        
+        // LOG STREAMS
         if ( cliRequest.commandLine.hasOption( CLIManager.LOG_FILE ) )
         {
             File logFile = new File( cliRequest.commandLine.getOptionValue( CLIManager.LOG_FILE ) );
             logFile = resolveFile( logFile, cliRequest.workingDirectory );
 
-            MessageUtils.setColorEnabled( false );
-
             // redirect stdout and stderr to file
             try
             {

http://git-wip-us.apache.org/repos/asf/maven/blob/785bad69/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 9b480ea..433c949 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
@@ -19,26 +19,35 @@ package org.apache.maven.cli;
  * under the License.
  */
 
-import junit.framework.TestCase;
-import org.apache.commons.cli.ParseException;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+import static org.junit.Assume.assumeTrue;
 
 import java.io.File;
 
+import org.apache.commons.cli.ParseException;
+import org.apache.maven.shared.utils.logging.MessageUtils;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+
 public class MavenCliTest
-    extends TestCase
 {
     private MavenCli cli;
 
     private String origBasedir;
 
-    protected void setUp()
+    @Before
+    public void setUp()
     {
         cli = new MavenCli();
         origBasedir = System.getProperty( MavenCli.MULTIMODULE_PROJECT_DIRECTORY );
     }
 
-    @Override
-    protected void tearDown()
+    @After
+    public void tearDown()
         throws Exception
     {
         if ( origBasedir != null )
@@ -49,9 +58,9 @@ public class MavenCliTest
         {
             System.getProperties().remove( MavenCli.MULTIMODULE_PROJECT_DIRECTORY );
         }
-        super.tearDown();
     }
 
+    @Test
     public void testCalculateDegreeOfConcurrencyWithCoreMultiplier()
     {
         int cores = Runtime.getRuntime().availableProcessors();
@@ -71,6 +80,7 @@ public class MavenCliTest
         }
     }
 
+    @Test
     public void testMavenConfig()
         throws Exception
     {
@@ -90,6 +100,7 @@ public class MavenCliTest
         assertEquals( "foobar", request.commandLine.getOptionValue( "builder" ) );
     }
 
+    @Test
     public void testMavenConfigInvalid()
         throws Exception
     {
@@ -120,6 +131,7 @@ public class MavenCliTest
      *
      * @throws Exception in case of failure.
      */
+    @Test
     public void testMVNConfigurationThreadCanBeOverwrittenViaCommandLine()
         throws Exception
     {
@@ -145,6 +157,7 @@ public class MavenCliTest
      *
      * @throws Exception
      */
+    @Test
     public void testMVNConfigurationDefinedPropertiesCanBeOverwrittenViaCommandLine()
         throws Exception
     {
@@ -172,6 +185,7 @@ public class MavenCliTest
      *
      * @throws Exception
      */
+    @Test
     public void testMVNConfigurationCLIRepeatedPropertiesLastWins()
         throws Exception
     {
@@ -199,6 +213,7 @@ public class MavenCliTest
      *
      * @throws Exception
      */
+    @Test
     public void testMVNConfigurationFunkyArguments()
         throws Exception
     {
@@ -221,4 +236,61 @@ public class MavenCliTest
 
         assertEquals( "-Dpom.xml", request.getCommandLine().getOptionValue( CLIManager.ALTERNATE_POM_FILE ) );
     }
+
+    @Test
+    public void testStyleColors()
+        throws Exception
+    {
+        assumeTrue( "ANSI not supported", MessageUtils.isColorEnabled() );
+        CliRequest request;
+
+        MessageUtils.setColorEnabled( true );
+        request = new CliRequest( new String[] { "-B" }, null );
+        cli.cli( request );
+        cli.properties( request );
+        cli.logging( request );
+        assertFalse( MessageUtils.isColorEnabled() );
+
+        MessageUtils.setColorEnabled( true );
+        request = new CliRequest( new String[] { "-l", "target/temp/mvn.log" }, null );
+        cli.cli( request );
+        cli.properties( request );
+        cli.logging( request );
+        assertFalse( MessageUtils.isColorEnabled() );
+
+        MessageUtils.setColorEnabled( false );
+        request = new CliRequest( new String[] { "-Dstyle.color=always" }, null );
+        cli.cli( request );
+        cli.properties( request );
+        cli.logging( request );
+        assertTrue( MessageUtils.isColorEnabled() );
+
+        MessageUtils.setColorEnabled( true );
+        request = new CliRequest( new String[] { "-Dstyle.color=never" }, null );
+        cli.cli( request );
+        cli.properties( request );
+        cli.logging( request );
+        assertFalse( MessageUtils.isColorEnabled() );
+
+        MessageUtils.setColorEnabled( false );
+        request = new CliRequest( new String[] { "-Dstyle.color=always", "-B", "-l", "target/temp/mvn.log" }, null );
+        cli.cli( request );
+        cli.properties( request );
+        cli.logging( request );
+        assertTrue( MessageUtils.isColorEnabled() );
+
+        try
+        {
+            MessageUtils.setColorEnabled( false );
+            request = new CliRequest( new String[] { "-Dstyle.color=maybe", "-B", "-l", "target/temp/mvn.log" }, null );
+            cli.cli( request );
+            cli.properties( request );
+            cli.logging( request );
+            fail( "maybe is not a valid option" );
+        }
+        catch ( IllegalArgumentException e )
+        {
+            // noop
+        }
+    }
 }


[23/23] maven git commit: [MNG-6196] removed remaining Monkey patching, not really necessary

Posted by hb...@apache.org.
[MNG-6196] removed remaining Monkey patching, not really necessary

done after Emmanuel Bourg #118 PR idea

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

Branch: refs/heads/MNG-6196_slf4j
Commit: 4f530c4f006b8d22da90d968a1d32797280804b9
Parents: eb2db7b
Author: Hervé Boutemy <hb...@apache.org>
Authored: Sun May 21 19:02:46 2017 +0200
Committer: Hervé Boutemy <hb...@apache.org>
Committed: Tue Sep 26 00:19:57 2017 +0200

----------------------------------------------------------------------
 maven-slf4j-provider/pom.xml                    | 20 +----
 .../java/org/slf4j/impl/StaticLoggerBinder.java | 89 ++++++++++++++++++++
 .../src/main/script/patch-slf4j-simple.groovy   | 36 --------
 3 files changed, 91 insertions(+), 54 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/4f530c4f/maven-slf4j-provider/pom.xml
----------------------------------------------------------------------
diff --git a/maven-slf4j-provider/pom.xml b/maven-slf4j-provider/pom.xml
index 68912f5..4bb0b2a 100644
--- a/maven-slf4j-provider/pom.xml
+++ b/maven-slf4j-provider/pom.xml
@@ -32,7 +32,7 @@ under the License.
 
   <name>Maven SLF4J Simple Provider</name>
   <description>
-    Maven SLF4J provider based on SLF4J's simple provider, monkey-patched to support Maven styled colors
+    Maven SLF4J provider based on SLF4J's simple provider, extended to support Maven styled colors
     for levels and stacktraces rendering.
   </description>
 
@@ -63,6 +63,7 @@ under the License.
               <overWrite>false</overWrite>
               <outputDirectory>${project.build.directory}/generated-sources/slf4j-simple</outputDirectory>
               <includes>org/slf4j/impl/*.java</includes>
+              <excludes>org/slf4j/impl/StaticLoggerBinder*</excludes>
             </artifactItem>
           </artifactItems>
         </configuration>
@@ -94,23 +95,6 @@ under the License.
           </execution>
         </executions>
       </plugin>
-      <plugin>
-        <groupId>org.codehaus.gmaven</groupId>
-        <artifactId>groovy-maven-plugin</artifactId>
-        <version>2.0</version>
-        <executions>
-          <execution>
-            <id>patch-slf4j-simple</id>
-            <phase>process-sources</phase>
-            <goals>
-              <goal>execute</goal>
-            </goals>
-            <configuration>
-              <source>${project.basedir}/src/main/script/patch-slf4j-simple.groovy</source>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
     </plugins>
   </build>
 </project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/maven/blob/4f530c4f/maven-slf4j-provider/src/main/java/org/slf4j/impl/StaticLoggerBinder.java
----------------------------------------------------------------------
diff --git a/maven-slf4j-provider/src/main/java/org/slf4j/impl/StaticLoggerBinder.java b/maven-slf4j-provider/src/main/java/org/slf4j/impl/StaticLoggerBinder.java
new file mode 100644
index 0000000..ba01d83
--- /dev/null
+++ b/maven-slf4j-provider/src/main/java/org/slf4j/impl/StaticLoggerBinder.java
@@ -0,0 +1,89 @@
+package org.slf4j.impl;
+
+/*
+ * 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.slf4j.ILoggerFactory;
+import org.slf4j.spi.LoggerFactoryBinder;
+
+/**
+ * SLF4J LoggerFactoryBinder implementation using MavenSimpleLogger.
+ * This class is part of the required classes used to specify an
+ * SLF4J logger provider implementation.
+ *
+ * @since 3.5.1
+ */
+public final class StaticLoggerBinder
+    implements LoggerFactoryBinder
+{
+    /**
+     * Declare the version of the SLF4J API this implementation is compiled
+     * against. The value of this field is usually modified with each release.
+     */
+    // to avoid constant folding by the compiler, this field must *not* be final
+    @SuppressWarnings( { "checkstyle:staticvariablename", "checkstyle:visibilitymodifier" } )
+    public static String REQUESTED_API_VERSION = "1.7.25"; // !final
+
+    private static final String LOGGER_FACTORY_CLASS_STR = MavenSimpleLoggerFactory.class.getName();
+
+    /**
+     * The unique instance of this class.
+     */
+    private static final StaticLoggerBinder SINGLETON = new StaticLoggerBinder();
+
+    /**
+     * The ILoggerFactory instance returned by the {@link #getLoggerFactory}
+     * method should always be the same object
+     */
+    private final ILoggerFactory loggerFactory;
+
+    /**
+     * Private constructor to prevent instantiation
+     */
+    private StaticLoggerBinder()
+    {
+        loggerFactory = new MavenSimpleLoggerFactory();
+    }
+
+    /**
+     * Returns the singleton of this class.
+     */
+    public static StaticLoggerBinder getSingleton()
+    {
+        return SINGLETON;
+    }
+
+    /**
+     * Returns the factory.
+     */
+    @Override
+    public ILoggerFactory getLoggerFactory()
+    {
+        return loggerFactory;
+    }
+
+    /**
+     * Returns the class name.
+     */
+    @Override
+    public String getLoggerFactoryClassStr()
+    {
+        return LOGGER_FACTORY_CLASS_STR;
+    }
+}

http://git-wip-us.apache.org/repos/asf/maven/blob/4f530c4f/maven-slf4j-provider/src/main/script/patch-slf4j-simple.groovy
----------------------------------------------------------------------
diff --git a/maven-slf4j-provider/src/main/script/patch-slf4j-simple.groovy b/maven-slf4j-provider/src/main/script/patch-slf4j-simple.groovy
deleted file mode 100644
index 9865625..0000000
--- a/maven-slf4j-provider/src/main/script/patch-slf4j-simple.groovy
+++ /dev/null
@@ -1,36 +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.
- */
-
-dir = new File( basedir, 'target/generated-sources/slf4j-simple/org/slf4j/impl' );
-
-file = new File( dir, 'StaticLoggerBinder.java' );
-content = file.text;
-
-// check if already patched
-if ( content.contains( 'MavenSimpleLoggerFactory' ) )
-{
-  println '    slf4j-simple already patched';
-  return;
-}
-
-
-println '    patching StaticLoggerBinder.java';
-content = content.replaceAll( 'SimpleLoggerFactory', 'MavenSimpleLoggerFactory' );
-file.write( content );


[18/23] maven git commit: [MNG-6275] Maven Embedder compatible fix

Posted by hb...@apache.org.
[MNG-6275] Maven Embedder compatible fix

- Need to use PARENT_CLASSLOADER so that when used by embedder we get a
consistent view of the available classes

- Restores test case from f047ea143766fd22ae42040e6805bef287f3cc3e


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

Branch: refs/heads/MNG-6196_slf4j
Commit: 27a2bda3f4a8f5385c4cab360ed7365d3d3d3c09
Parents: c9a288d
Author: Stephen Connolly <st...@gmail.com>
Authored: Thu Aug 24 11:33:01 2017 +0200
Committer: Stephen Connolly <st...@gmail.com>
Committed: Sat Sep 9 11:56:27 2017 +0100

----------------------------------------------------------------------
 .../classrealm/DefaultClassRealmManager.java    |   2 +-
 .../DefaultClassRealmManagerTest.java           | 101 +++++++++++++++++++
 2 files changed, 102 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/27a2bda3/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 6ce1925..013ab23 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
@@ -120,7 +120,7 @@ public class DefaultClassRealmManager
             {
                 try
                 {
-                    ClassRealm classRealm = world.newRealm( realmId, null );
+                    ClassRealm classRealm = world.newRealm( realmId, PARENT_CLASSLOADER );
 
                     if ( logger.isDebugEnabled() )
                     {

http://git-wip-us.apache.org/repos/asf/maven/blob/27a2bda3/maven-core/src/test/java/org/apache/maven/classrealm/DefaultClassRealmManagerTest.java
----------------------------------------------------------------------
diff --git a/maven-core/src/test/java/org/apache/maven/classrealm/DefaultClassRealmManagerTest.java b/maven-core/src/test/java/org/apache/maven/classrealm/DefaultClassRealmManagerTest.java
new file mode 100644
index 0000000..726199f
--- /dev/null
+++ b/maven-core/src/test/java/org/apache/maven/classrealm/DefaultClassRealmManagerTest.java
@@ -0,0 +1,101 @@
+package org.apache.maven.classrealm;
+
+/*
+ * 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.ServiceLoader;
+
+import javax.script.ScriptEngineFactory;
+
+import org.apache.maven.model.Model;
+import org.apache.maven.model.Plugin;
+import org.codehaus.plexus.ContainerConfiguration;
+import org.codehaus.plexus.PlexusConstants;
+import org.codehaus.plexus.PlexusTestCase;
+import org.codehaus.plexus.classworlds.realm.ClassRealm;
+import org.junit.Test;
+
+public class DefaultClassRealmManagerTest extends PlexusTestCase
+{
+    private ClassRealmManager classRealmManager;
+
+    @Override
+    protected void setUp()
+        throws Exception
+    {
+        super.setUp();
+        this.classRealmManager = lookup( ClassRealmManager.class );
+    }
+
+    @Override
+    protected void customizeContainerConfiguration( ContainerConfiguration configuration )
+    {
+        configuration.setClassPathScanning( PlexusConstants.SCANNING_INDEX );
+    }
+
+    @Test
+    public void testMNG6275_pluginRealmDefaultParentClassLoader()
+    {
+        Plugin plugin = new Plugin();
+        plugin.setVersion( "VERSION" );
+        
+        ClassLoader parent = null;
+        
+        ClassRealm pluginRealm = classRealmManager.createPluginRealm( plugin, parent, null, null, null );
+        ServiceLoader<ScriptEngineFactory> sef = ServiceLoader.load( ScriptEngineFactory.class, pluginRealm );
+        assertTrue( sef.iterator().hasNext() );
+    }
+
+    @Test
+    public void testMNG6275_extensionRealmDefaultParentClassLoader()
+    {
+        Plugin extension = new Plugin();
+        extension.setVersion( "VERSION" );
+        
+        ClassRealm extensionRealm = classRealmManager.createExtensionRealm( extension, null );
+        ServiceLoader<ScriptEngineFactory> sef = ServiceLoader.load( ScriptEngineFactory.class, extensionRealm );
+        assertTrue( sef.iterator().hasNext() );
+    }
+
+    @Test
+    public void testMNG6275_projectRealmDefaultParentClassLoader()
+    {
+        Model model = new Model();
+        
+        ClassRealm projectRealm = classRealmManager.createProjectRealm( model, null );
+        ServiceLoader<ScriptEngineFactory> sef = ServiceLoader.load( ScriptEngineFactory.class, projectRealm );
+        assertTrue( sef.iterator().hasNext() );
+    }
+
+    @Test
+    public void testMNG6275_mavenApiRealmDefaultParentClassLoader()
+    {
+        ClassRealm mavenApiRealm = classRealmManager.getMavenApiRealm();
+        ServiceLoader<ScriptEngineFactory> sef = ServiceLoader.load( ScriptEngineFactory.class, mavenApiRealm );
+        assertTrue( sef.iterator().hasNext() );
+    }
+
+    @Test
+    public void testMNG6275_coreRealmDefaultParentClassLoader()
+    {
+        ClassRealm coreRealm = classRealmManager.getCoreRealm();
+        ServiceLoader<ScriptEngineFactory> sef = ServiceLoader.load( ScriptEngineFactory.class, coreRealm );
+        assertTrue( sef.iterator().hasNext() );
+    }
+}


[15/23] maven git commit: Update Jenkinsfile to use JENKINS-43507 syntax for resolveScm

Posted by hb...@apache.org.
Update Jenkinsfile to use JENKINS-43507 syntax for resolveScm


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

Branch: refs/heads/MNG-6196_slf4j
Commit: e44c39c2eb5afda9efe60b9dd0ffc32c62501c5f
Parents: f047ea1
Author: Stephen Connolly <st...@gmail.com>
Authored: Tue Aug 29 21:47:50 2017 +0100
Committer: Stephen Connolly <st...@gmail.com>
Committed: Tue Aug 29 21:47:50 2017 +0100

----------------------------------------------------------------------
 Jenkinsfile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/e44c39c2/Jenkinsfile
----------------------------------------------------------------------
diff --git a/Jenkinsfile b/Jenkinsfile
index b6c7e19..004abcb 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -49,7 +49,7 @@ node('ubuntu') {
             junit allowEmptyResults: true, testResults:'**/target/*-reports/*.xml'
         }
 
-        tests = resolveScm source: [$class: 'GitSCMSource', credentialsId: '', excludes: '', gitTool: 'Default', id: '_', ignoreOnPushNotifications: false, includes: '*', remote: 'https://git-wip-us.apache.org/repos/asf/maven-integration-testing.git'], targets: [BRANCH_NAME, 'master']
+        tests = resolveScm source: [$class: 'GitSCMSource', credentialsId: '', id: '_', remote: 'https://git-wip-us.apache.org/repos/asf/maven-integration-testing.git', traits: [[$class: 'jenkins.plugins.git.traits.BranchDiscoveryTrait'], [$class: 'GitToolSCMSourceTrait', gitTool: 'Default']]], targets: [BRANCH_NAME, 'master']
     }
 }
 


[17/23] maven git commit: [MNG-6216] ArrayIndexOutOfBoundsException when parsing POM o Upgraded to new release of plexus-utils which contains the fix for #22 in plexus-utils.

Posted by hb...@apache.org.
[MNG-6216] ArrayIndexOutOfBoundsException when parsing POM
 o Upgraded to new release of plexus-utils which contains
   the fix for #22 in plexus-utils.


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

Branch: refs/heads/MNG-6196_slf4j
Commit: c9a288d8b1090fa957d6caccc12f0bf13bb5e267
Parents: 170c1ed
Author: Karl Heinz Marbaise <kh...@apache.org>
Authored: Thu Aug 3 20:12:25 2017 +0200
Committer: Stephen Connolly <st...@gmail.com>
Committed: Thu Aug 31 10:21:35 2017 +0100

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


http://git-wip-us.apache.org/repos/asf/maven/blob/c9a288d8/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 8ce59ed..761edbf 100644
--- a/pom.xml
+++ b/pom.xml
@@ -56,7 +56,7 @@ under the License.
     <mockitoVersion>1.10.19</mockitoVersion>
     <plexusVersion>1.7.1</plexusVersion>
     <plexusInterpolationVersion>1.24</plexusInterpolationVersion>
-    <plexusUtilsVersion>3.0.24</plexusUtilsVersion>
+    <plexusUtilsVersion>3.1.0</plexusUtilsVersion>
     <guavaVersion>20.0</guavaVersion>
     <guiceVersion>4.0</guiceVersion>
     <sisuInjectVersion>0.3.3</sisuInjectVersion>


[03/23] maven git commit: [MNG-6206] display deprecation build warning in case when dependencies use metaversions (LATEST or RELEASE)

Posted by hb...@apache.org.
[MNG-6206] display deprecation build warning in case when dependencies
use metaversions (LATEST or RELEASE)

Signed-off-by: Karl Heinz Marbaise <kh...@apache.org>


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

Branch: refs/heads/MNG-6196_slf4j
Commit: eb6b212b567c287734a2dbbef3c113fe650f1def
Parents: a7dddcb
Author: dejan2609 <de...@gmail.com>
Authored: Sat May 20 16:57:55 2017 +0200
Committer: Karl Heinz Marbaise <kh...@apache.org>
Committed: Sun Jun 4 20:23:02 2017 +0200

----------------------------------------------------------------------
 .../model/validation/DefaultModelValidator.java |  6 ++++
 .../validation/DefaultModelValidatorTest.java   | 12 +++++++
 ...pendency-metaversions-latest-and-release.xml | 38 ++++++++++++++++++++
 3 files changed, 56 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/eb6b212b/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 e790f21..f46be0e 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
@@ -485,6 +485,12 @@ public class DefaultModelValidator
                 }
             }
 
+            if ( equals( "LATEST", dependency.getVersion() ) || equals( "RELEASE", dependency.getVersion() ) )
+            {
+                addViolation( problems, Severity.WARNING, Version.BASE, prefix + ".version", key,
+                        "is either LATEST or RELEASE (both of them are being deprecated)", dependency );
+            }
+
             Dependency existing = index.get( key );
 
             if ( existing != null )

http://git-wip-us.apache.org/repos/asf/maven/blob/eb6b212b/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 8525476..bb99be9 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
@@ -676,4 +676,16 @@ public class DefaultModelValidatorTest
         assertViolations( result, 0, 0, 0 );
     }
 
+    public void testDeprecatedDependencyMetaversionsLatestAndRelease()
+            throws Exception
+    {
+        SimpleProblemCollector result = validateRaw( "deprecated-dependency-metaversions-latest-and-release.xml" );
+
+        assertViolations( result, 0, 0, 2 );
+
+        assertContains( result.getWarnings().get( 0 ),
+               "'dependencies.dependency.version' for test:a:jar is either LATEST or RELEASE (both of them are being deprecated)" );
+        assertContains( result.getWarnings().get( 1 ),
+                "'dependencies.dependency.version' for test:b:jar is either LATEST or RELEASE (both of them are being deprecated)" );
+    }
 }

http://git-wip-us.apache.org/repos/asf/maven/blob/eb6b212b/maven-model-builder/src/test/resources/poms/validation/deprecated-dependency-metaversions-latest-and-release.xml
----------------------------------------------------------------------
diff --git a/maven-model-builder/src/test/resources/poms/validation/deprecated-dependency-metaversions-latest-and-release.xml b/maven-model-builder/src/test/resources/poms/validation/deprecated-dependency-metaversions-latest-and-release.xml
new file mode 100644
index 0000000..eba532b
--- /dev/null
+++ b/maven-model-builder/src/test/resources/poms/validation/deprecated-dependency-metaversions-latest-and-release.xml
@@ -0,0 +1,38 @@
+<!--
+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.
+-->
+
+<project>
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>gid</groupId>
+  <artifactId>aid</artifactId>
+  <version>0.1</version>
+
+    <dependencies>
+      <dependency>
+        <groupId>test</groupId>
+        <artifactId>a</artifactId>
+        <version>LATEST</version>
+      </dependency>
+      <dependency>
+        <groupId>test</groupId>
+        <artifactId>b</artifactId>
+        <version>RELEASE</version>
+        </dependency>
+    </dependencies>
+</project>


[08/23] maven git commit: [MNG-5457] Show repository id when downloading or uploading from/to a remote repository

Posted by hb...@apache.org.
[MNG-5457] Show repository id when downloading or uploading from/to a remote repository


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

Branch: refs/heads/MNG-6196_slf4j
Commit: b1002575177abd1108fe50f457cceb9c7c3cf7d8
Parents: e520324
Author: Michael Osipov <mi...@apache.org>
Authored: Fri Jul 15 23:26:56 2016 +0200
Committer: Michael Osipov <mi...@apache.org>
Committed: Wed Jul 12 20:10:47 2017 +0200

----------------------------------------------------------------------
 .../transfer/AbstractMavenTransferListener.java | 31 +++++++++++++-------
 .../transfer/Slf4jMavenTransferListener.java    | 31 +++++++++++++-------
 2 files changed, 42 insertions(+), 20 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/b1002575/maven-embedder/src/main/java/org/apache/maven/cli/transfer/AbstractMavenTransferListener.java
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/transfer/AbstractMavenTransferListener.java b/maven-embedder/src/main/java/org/apache/maven/cli/transfer/AbstractMavenTransferListener.java
index 21822be..2b13879 100644
--- a/maven-embedder/src/main/java/org/apache/maven/cli/transfer/AbstractMavenTransferListener.java
+++ b/maven-embedder/src/main/java/org/apache/maven/cli/transfer/AbstractMavenTransferListener.java
@@ -217,9 +217,15 @@ public abstract class AbstractMavenTransferListener
     public void transferInitiated( TransferEvent event )
     {
         String action = event.getRequestType() == TransferEvent.RequestType.PUT ? "Uploading" : "Downloading";
+        String direction = event.getRequestType() == TransferEvent.RequestType.PUT ? "to" : "from";
 
         TransferResource resource = event.getResource();
-        out.println( action + ": " + resource.getRepositoryUrl() + resource.getResourceName() );
+        StringBuilder message = new StringBuilder();
+        message.append( action ).append( ' ' ).append( direction ).append( ' ' ).append( resource.getRepositoryId() );
+        message.append( ": " );
+        message.append( resource.getRepositoryUrl() ).append( resource.getResourceName() );
+
+        out.println( message.toString() );
     }
 
     @Override
@@ -228,30 +234,35 @@ public abstract class AbstractMavenTransferListener
     {
         TransferResource resource = event.getResource();
         // TODO This needs to be colorized
-        out.println( "[WARNING] " + event.getException().getMessage() + " for " + resource.getRepositoryUrl()
-            + resource.getResourceName() );
+        out.println( "[WARNING] " + event.getException().getMessage() + " from " + resource.getRepositoryId() + " for "
+            + resource.getRepositoryUrl() + resource.getResourceName() );
     }
 
     @Override
     public void transferSucceeded( TransferEvent event )
     {
+        String action = ( event.getRequestType() == TransferEvent.RequestType.PUT ? "Uploaded" : "Downloaded" );
+        String direction = event.getRequestType() == TransferEvent.RequestType.PUT ? "to" : "from";
+
         TransferResource resource = event.getResource();
         long contentLength = event.getTransferredBytes();
-
         FileSizeFormat format = new FileSizeFormat( Locale.ENGLISH );
-        String result = ( event.getRequestType() == TransferEvent.RequestType.PUT ? "Uploaded" : "Downloaded" );
-        String len = format.format( contentLength );
 
-        String throughput = "";
+        StringBuilder message = new StringBuilder();
+        message.append( action ).append( ' ' ).append( direction ).append( ' ' ).append( resource.getRepositoryId() );
+        message.append( ": " );
+        message.append( resource.getRepositoryUrl() ).append( resource.getResourceName() );
+        message.append( " (" ).append( format.format( contentLength ) );
+
         long duration = System.currentTimeMillis() - resource.getTransferStartTime();
         if ( duration > 0L )
         {
             double bytesPerSecond = contentLength / ( duration / 1000.0 );
-            throughput = " at " + format.format( (long) bytesPerSecond ) + "/s";
+            message.append( " at " ).append( format.format( (long) bytesPerSecond ) ).append( "/s" );
         }
 
-        out.println( result + ": " + resource.getRepositoryUrl() + resource.getResourceName() + " (" + len
-            + throughput + ")" );
+        message.append( ')' );
+        out.println( message.toString() );
     }
 
 }

http://git-wip-us.apache.org/repos/asf/maven/blob/b1002575/maven-embedder/src/main/java/org/apache/maven/cli/transfer/Slf4jMavenTransferListener.java
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/transfer/Slf4jMavenTransferListener.java b/maven-embedder/src/main/java/org/apache/maven/cli/transfer/Slf4jMavenTransferListener.java
index ac5333e..5c97acb 100644
--- a/maven-embedder/src/main/java/org/apache/maven/cli/transfer/Slf4jMavenTransferListener.java
+++ b/maven-embedder/src/main/java/org/apache/maven/cli/transfer/Slf4jMavenTransferListener.java
@@ -50,9 +50,15 @@ public class Slf4jMavenTransferListener
     public void transferInitiated( TransferEvent event )
     {
         String action = event.getRequestType() == TransferEvent.RequestType.PUT ? "Uploading" : "Downloading";
+        String direction = event.getRequestType() == TransferEvent.RequestType.PUT ? "to" : "from";
 
         TransferResource resource = event.getResource();
-        out.info( action + ": " + resource.getRepositoryUrl() + resource.getResourceName() );
+        StringBuilder message = new StringBuilder();
+        message.append( action ).append( ' ' ).append( direction ).append( ' ' ).append( resource.getRepositoryId() );
+        message.append( ": " );
+        message.append( resource.getRepositoryUrl() ).append( resource.getResourceName() );
+
+        out.info( message.toString() );
     }
 
     @Override
@@ -60,30 +66,35 @@ public class Slf4jMavenTransferListener
         throws TransferCancelledException
     {
         TransferResource resource = event.getResource();
-        out.warn( event.getException().getMessage() + " for " + resource.getRepositoryUrl()
-            + resource.getResourceName() );
+        out.warn( event.getException().getMessage() + " from " + resource.getRepositoryId() + " for "
+            + resource.getRepositoryUrl() + resource.getResourceName() );
     }
 
     @Override
     public void transferSucceeded( TransferEvent event )
     {
+        String action = ( event.getRequestType() == TransferEvent.RequestType.PUT ? "Uploaded" : "Downloaded" );
+        String direction = event.getRequestType() == TransferEvent.RequestType.PUT ? "to" : "from";
+
         TransferResource resource = event.getResource();
         long contentLength = event.getTransferredBytes();
-
         FileSizeFormat format = new FileSizeFormat( Locale.ENGLISH );
-        String result = ( event.getRequestType() == TransferEvent.RequestType.PUT ? "Uploaded" : "Downloaded" );
-        String len = format.format( contentLength );
 
-        String throughput = "";
+        StringBuilder message = new StringBuilder();
+        message.append( action ).append( ' ' ).append( direction ).append( ' ' ).append( resource.getRepositoryId() );
+        message.append( ": " );
+        message.append( resource.getRepositoryUrl() ).append( resource.getResourceName() );
+        message.append( " (" ).append( format.format( contentLength ) );
+
         long duration = System.currentTimeMillis() - resource.getTransferStartTime();
         if ( duration > 0L )
         {
             double bytesPerSecond = contentLength / ( duration / 1000.0 );
-            throughput = " at " + format.format( (long) bytesPerSecond ) + "/s";
+            message.append( " at " ).append( format.format( (long) bytesPerSecond ) ).append( "/s" );
         }
 
-        out.info( result + ": " + resource.getRepositoryUrl() + resource.getResourceName() + " (" + len
-            + throughput + ")" );
+        message.append( ')' );
+        out.info( message.toString() );
     }
 
 }


[02/23] maven git commit: [MNG-6084] Support JSR 250 annotations

Posted by hb...@apache.org.
[MNG-6084] Support JSR 250 annotations


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

Branch: refs/heads/MNG-6196_slf4j
Commit: a7dddcb87626fec256f1b8ccbe957f94cdf401e4
Parents: 66fc74d
Author: Dan Tran <da...@apache.org>
Authored: Sun Sep 11 21:07:39 2016 -0700
Committer: Michael Osipov <mi...@apache.org>
Committed: Thu May 25 20:05:35 2017 +0200

----------------------------------------------------------------------
 maven-core/src/main/resources/META-INF/maven/extension.xml    | 3 +++
 maven-embedder/pom.xml                                        | 4 ++++
 .../src/main/java/org/apache/maven/cli/MavenCli.java          | 7 ++++---
 pom.xml                                                       | 5 +++++
 4 files changed, 16 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/a7dddcb8/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 1d24d92..1f0b95f 100644
--- a/maven-core/src/main/resources/META-INF/maven/extension.xml
+++ b/maven-core/src/main/resources/META-INF/maven/extension.xml
@@ -98,6 +98,8 @@ under the License.
     <exportedPackage>javax.enterprise.util.*</exportedPackage>
     <exportedPackage>javax.enterprise.inject.*</exportedPackage>
 
+    <!-- javax.annotation (JSR-250) -->
+    <exportedPackage>javax.annotation.*</exportedPackage>
 
     <!-- 
       | We may potentially want to export these, but right now I'm not sure that anything Guice specific needs
@@ -157,6 +159,7 @@ under the License.
     <exportedArtifact>org.apache.maven.resolver:maven-resolver-impl</exportedArtifact>
 
     <exportedArtifact>javax.inject:javax.inject</exportedArtifact>
+    <exportedArtifact>javax.annotation:jsr250-api</exportedArtifact>
     <exportedArtifact>org.slf4j:slf4j-api</exportedArtifact>
     <exportedArtifact>org.fusesource.jansi:jansi</exportedArtifact>
 

http://git-wip-us.apache.org/repos/asf/maven/blob/a7dddcb8/maven-embedder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-embedder/pom.xml b/maven-embedder/pom.xml
index 52e9c82..7bd2650 100644
--- a/maven-embedder/pom.xml
+++ b/maven-embedder/pom.xml
@@ -88,6 +88,10 @@ under the License.
       <artifactId>javax.inject</artifactId>
     </dependency>
     <dependency>
+      <groupId>javax.annotation</groupId>
+      <artifactId>jsr250-api</artifactId>
+    </dependency>
+    <dependency>
       <groupId>org.codehaus.plexus</groupId>
       <artifactId>plexus-utils</artifactId>
     </dependency>

http://git-wip-us.apache.org/repos/asf/maven/blob/a7dddcb8/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 e1e58c8..641a2a9 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
@@ -601,9 +601,9 @@ public class MavenCli
 
         ClassRealm containerRealm = setupContainerRealm( cliRequest.classWorld, coreRealm, extClassPath, extensions );
 
-        ContainerConfiguration cc = new DefaultContainerConfiguration().setClassWorld( cliRequest.classWorld ).setRealm(
-            containerRealm ).setClassPathScanning( PlexusConstants.SCANNING_INDEX ).setAutoWiring( true ).setName(
-            "maven" );
+        ContainerConfiguration cc = new DefaultContainerConfiguration().setClassWorld( cliRequest.classWorld )
+            .setRealm( containerRealm ).setClassPathScanning( PlexusConstants.SCANNING_INDEX ).setAutoWiring( true )
+            .setJSR250Lifecycle( true ).setName( "maven" );
 
         Set<String> exportedArtifacts = new HashSet<>( coreEntry.getExportedArtifacts() );
         Set<String> exportedPackages = new HashSet<>( coreEntry.getExportedPackages() );
@@ -697,6 +697,7 @@ public class MavenCli
                 .setRealm( containerRealm ) //
                 .setClassPathScanning( PlexusConstants.SCANNING_INDEX ) //
                 .setAutoWiring( true ) //
+                .setJSR250Lifecycle( true ) //
                 .setName( "maven" );
 
             DefaultPlexusContainer container = new DefaultPlexusContainer( cc, new AbstractModule()

http://git-wip-us.apache.org/repos/asf/maven/blob/a7dddcb8/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 5e12e36..d6f165c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -259,6 +259,11 @@ under the License.
         <version>1</version>
       </dependency>
       <dependency>
+        <groupId>javax.annotation</groupId>
+        <artifactId>jsr250-api</artifactId>
+        <version>1.0</version>
+      </dependency>
+      <dependency>
         <groupId>org.codehaus.plexus</groupId>
         <artifactId>plexus-component-annotations</artifactId>
         <version>${plexusVersion}</version>


[11/23] maven git commit: [MNG-6148] Can't package and assemble with JDK9/Jigsaw

Posted by hb...@apache.org.
[MNG-6148] Can't package and assemble with JDK9/Jigsaw


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

Branch: refs/heads/MNG-6196_slf4j
Commit: 842db371f0fcaf4e930b99395fb6a8bb442684d6
Parents: 4f2a2db
Author: rfscholte <rf...@apache.org>
Authored: Tue Aug 15 21:42:42 2017 +0200
Committer: rfscholte <rf...@apache.org>
Committed: Tue Aug 15 21:42:42 2017 +0200

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


http://git-wip-us.apache.org/repos/asf/maven/blob/842db371/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 78c375f..8ce59ed 100644
--- a/pom.xml
+++ b/pom.xml
@@ -657,6 +657,7 @@ under the License.
           <plugin>
             <groupId>org.apache.maven.plugins</groupId>
             <artifactId>maven-javadoc-plugin</artifactId>
+            <version>3.0.0-M1</version>
             <configuration>
               <!-- TODO Remove when we upgrade to maven-parent 31 -->
               <locale>en</locale>


[22/23] maven git commit: [MNG-6196] updated slf4j to 1.7.25

Posted by hb...@apache.org.
[MNG-6196] updated slf4j to 1.7.25

[SLF4J-394] use new slf4j methods done for us
[SLF4J-395] use slf4j-simple System.out cache

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

Branch: refs/heads/MNG-6196_slf4j
Commit: eb2db7b28664dbaac6a59a2189c70d92e455dcea
Parents: 542a7a8
Author: Hervé Boutemy <hb...@apache.org>
Authored: Sat Mar 4 02:59:42 2017 +0100
Committer: Hervé Boutemy <hb...@apache.org>
Committed: Tue Sep 26 00:19:57 2017 +0200

----------------------------------------------------------------------
 .../src/conf/logging/simplelogger.properties       |  1 +
 .../java/org/slf4j/impl/MavenSimpleLogger.java     |  6 +++++-
 .../src/main/script/patch-slf4j-simple.groovy      | 17 -----------------
 pom.xml                                            |  2 +-
 4 files changed, 7 insertions(+), 19 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/eb2db7b2/apache-maven/src/conf/logging/simplelogger.properties
----------------------------------------------------------------------
diff --git a/apache-maven/src/conf/logging/simplelogger.properties b/apache-maven/src/conf/logging/simplelogger.properties
index 8dea717..64b331b 100644
--- a/apache-maven/src/conf/logging/simplelogger.properties
+++ b/apache-maven/src/conf/logging/simplelogger.properties
@@ -20,6 +20,7 @@ org.slf4j.simpleLogger.showDateTime=false
 org.slf4j.simpleLogger.showThreadName=false
 org.slf4j.simpleLogger.showLogName=false
 org.slf4j.simpleLogger.logFile=System.out
+org.slf4j.simpleLogger.cacheOutputStream=true
 org.slf4j.simpleLogger.levelInBrackets=true
 org.slf4j.simpleLogger.log.Sisu=info
 org.slf4j.simpleLogger.warnLevelString=WARNING

http://git-wip-us.apache.org/repos/asf/maven/blob/eb2db7b2/maven-slf4j-provider/src/main/java/org/slf4j/impl/MavenSimpleLogger.java
----------------------------------------------------------------------
diff --git a/maven-slf4j-provider/src/main/java/org/slf4j/impl/MavenSimpleLogger.java b/maven-slf4j-provider/src/main/java/org/slf4j/impl/MavenSimpleLogger.java
index 17f1f48..3c1ca4f 100644
--- a/maven-slf4j-provider/src/main/java/org/slf4j/impl/MavenSimpleLogger.java
+++ b/maven-slf4j-provider/src/main/java/org/slf4j/impl/MavenSimpleLogger.java
@@ -56,8 +56,12 @@ public class MavenSimpleLogger
     }
 
     @Override
-    protected void renderThrowable( Throwable t, PrintStream stream )
+    protected void writeThrowable( Throwable t, PrintStream stream )
     {
+        if ( t == null )
+        {
+            return;
+        }
         stream.print( buffer().failure( t.getClass().getName() ) );
         if ( t.getMessage() != null )
         {

http://git-wip-us.apache.org/repos/asf/maven/blob/eb2db7b2/maven-slf4j-provider/src/main/script/patch-slf4j-simple.groovy
----------------------------------------------------------------------
diff --git a/maven-slf4j-provider/src/main/script/patch-slf4j-simple.groovy b/maven-slf4j-provider/src/main/script/patch-slf4j-simple.groovy
index bba8646..9865625 100644
--- a/maven-slf4j-provider/src/main/script/patch-slf4j-simple.groovy
+++ b/maven-slf4j-provider/src/main/script/patch-slf4j-simple.groovy
@@ -34,20 +34,3 @@ if ( content.contains( 'MavenSimpleLoggerFactory' ) )
 println '    patching StaticLoggerBinder.java';
 content = content.replaceAll( 'SimpleLoggerFactory', 'MavenSimpleLoggerFactory' );
 file.write( content );
-
-
-println '    patching SimpleLogger.java';
-file = new File( dir, 'SimpleLogger.java' );
-content = file.text;
-content = content.replaceAll( 'private static final int LOG_LEVEL_', 'protected static final int LOG_LEVEL_' );
-content = content.replaceAll( 't.printStackTrace(TARGET_STREAM)', 'renderThrowable(t, TARGET_STREAM);' );
-
-index = content.indexOf( 'switch (level) {' );
-end = content.indexOf( '}', index ) + 1;
-content = content.substring( 0, index ) + 'buf.append(renderLevel(level));' + content.substring( end );
-
-content = content.substring( 0, content.lastIndexOf( '}' ) );
-content += '  protected void renderThrowable(Throwable t, PrintStream stream) {}\n';
-content += '  protected String renderLevel(int level) { return ""; }\n}\n';
-
-file.write( content );

http://git-wip-us.apache.org/repos/asf/maven/blob/eb2db7b2/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 4a79956..ea119e1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -66,7 +66,7 @@ under the License.
     <modelloVersion>1.9.1</modelloVersion>
     <jxpathVersion>1.3</jxpathVersion>
     <resolverVersion>1.1.0</resolverVersion>
-    <slf4jVersion>1.7.22</slf4jVersion>
+    <slf4jVersion>1.7.25</slf4jVersion>
     <maven.test.redirectTestOutputToFile>true</maven.test.redirectTestOutputToFile>
     <!-- Control the name of the distribution and information output by mvn -->
     <distributionId>apache-maven</distributionId>


[14/23] maven git commit: Squashed commit of the following:

Posted by hb...@apache.org.
Squashed commit of the following:

commit c829bdcfc275b207e23fc568b3c16d98195675be
Author: rfscholte <rf...@apache.org>
Date:   Thu Aug 24 10:54:08 2017 +0200

    [MNG-6275] ServiceLoaderFactory can't find implementations via ClassRealm


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

Branch: refs/heads/MNG-6196_slf4j
Commit: f047ea143766fd22ae42040e6805bef287f3cc3e
Parents: 785bad6
Author: rfscholte <rf...@apache.org>
Authored: Thu Aug 24 11:33:01 2017 +0200
Committer: rfscholte <rf...@apache.org>
Committed: Thu Aug 24 11:33:01 2017 +0200

----------------------------------------------------------------------
 .../classrealm/DefaultClassRealmManager.java    |   2 +-
 .../DefaultClassRealmManagerTest.java           | 101 +++++++++++++++++++
 2 files changed, 102 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/f047ea14/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 6ce1925..d517924 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
@@ -120,7 +120,7 @@ public class DefaultClassRealmManager
             {
                 try
                 {
-                    ClassRealm classRealm = world.newRealm( realmId, null );
+                    ClassRealm classRealm = world.newRealm( realmId, ClassLoader.getSystemClassLoader() );
 
                     if ( logger.isDebugEnabled() )
                     {

http://git-wip-us.apache.org/repos/asf/maven/blob/f047ea14/maven-core/src/test/java/org/apache/maven/classrealm/DefaultClassRealmManagerTest.java
----------------------------------------------------------------------
diff --git a/maven-core/src/test/java/org/apache/maven/classrealm/DefaultClassRealmManagerTest.java b/maven-core/src/test/java/org/apache/maven/classrealm/DefaultClassRealmManagerTest.java
new file mode 100644
index 0000000..726199f
--- /dev/null
+++ b/maven-core/src/test/java/org/apache/maven/classrealm/DefaultClassRealmManagerTest.java
@@ -0,0 +1,101 @@
+package org.apache.maven.classrealm;
+
+/*
+ * 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.ServiceLoader;
+
+import javax.script.ScriptEngineFactory;
+
+import org.apache.maven.model.Model;
+import org.apache.maven.model.Plugin;
+import org.codehaus.plexus.ContainerConfiguration;
+import org.codehaus.plexus.PlexusConstants;
+import org.codehaus.plexus.PlexusTestCase;
+import org.codehaus.plexus.classworlds.realm.ClassRealm;
+import org.junit.Test;
+
+public class DefaultClassRealmManagerTest extends PlexusTestCase
+{
+    private ClassRealmManager classRealmManager;
+
+    @Override
+    protected void setUp()
+        throws Exception
+    {
+        super.setUp();
+        this.classRealmManager = lookup( ClassRealmManager.class );
+    }
+
+    @Override
+    protected void customizeContainerConfiguration( ContainerConfiguration configuration )
+    {
+        configuration.setClassPathScanning( PlexusConstants.SCANNING_INDEX );
+    }
+
+    @Test
+    public void testMNG6275_pluginRealmDefaultParentClassLoader()
+    {
+        Plugin plugin = new Plugin();
+        plugin.setVersion( "VERSION" );
+        
+        ClassLoader parent = null;
+        
+        ClassRealm pluginRealm = classRealmManager.createPluginRealm( plugin, parent, null, null, null );
+        ServiceLoader<ScriptEngineFactory> sef = ServiceLoader.load( ScriptEngineFactory.class, pluginRealm );
+        assertTrue( sef.iterator().hasNext() );
+    }
+
+    @Test
+    public void testMNG6275_extensionRealmDefaultParentClassLoader()
+    {
+        Plugin extension = new Plugin();
+        extension.setVersion( "VERSION" );
+        
+        ClassRealm extensionRealm = classRealmManager.createExtensionRealm( extension, null );
+        ServiceLoader<ScriptEngineFactory> sef = ServiceLoader.load( ScriptEngineFactory.class, extensionRealm );
+        assertTrue( sef.iterator().hasNext() );
+    }
+
+    @Test
+    public void testMNG6275_projectRealmDefaultParentClassLoader()
+    {
+        Model model = new Model();
+        
+        ClassRealm projectRealm = classRealmManager.createProjectRealm( model, null );
+        ServiceLoader<ScriptEngineFactory> sef = ServiceLoader.load( ScriptEngineFactory.class, projectRealm );
+        assertTrue( sef.iterator().hasNext() );
+    }
+
+    @Test
+    public void testMNG6275_mavenApiRealmDefaultParentClassLoader()
+    {
+        ClassRealm mavenApiRealm = classRealmManager.getMavenApiRealm();
+        ServiceLoader<ScriptEngineFactory> sef = ServiceLoader.load( ScriptEngineFactory.class, mavenApiRealm );
+        assertTrue( sef.iterator().hasNext() );
+    }
+
+    @Test
+    public void testMNG6275_coreRealmDefaultParentClassLoader()
+    {
+        ClassRealm coreRealm = classRealmManager.getCoreRealm();
+        ServiceLoader<ScriptEngineFactory> sef = ServiceLoader.load( ScriptEngineFactory.class, coreRealm );
+        assertTrue( sef.iterator().hasNext() );
+    }
+}


[07/23] maven git commit: [MNG-6258] Upgrade to Maven Resolver 1.1.0

Posted by hb...@apache.org.
[MNG-6258] Upgrade to Maven Resolver 1.1.0


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

Branch: refs/heads/MNG-6196_slf4j
Commit: e520324c8d45e2465cf8aeafb4d57cef30250136
Parents: a1fe421
Author: Michael Osipov <mi...@apache.org>
Authored: Wed Jul 12 19:50:09 2017 +0200
Committer: Michael Osipov <mi...@apache.org>
Committed: Wed Jul 12 19:50:09 2017 +0200

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


http://git-wip-us.apache.org/repos/asf/maven/blob/e520324c/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index d6f165c..78c375f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -65,7 +65,7 @@ under the License.
     <cipherVersion>1.7</cipherVersion>
     <modelloVersion>1.9.1</modelloVersion>
     <jxpathVersion>1.3</jxpathVersion>
-    <resolverVersion>1.0.3</resolverVersion>
+    <resolverVersion>1.1.0</resolverVersion>
     <slf4jVersion>1.7.22</slf4jVersion>
     <maven.test.redirectTestOutputToFile>true</maven.test.redirectTestOutputToFile>
     <!-- Control the name of the distribution and information output by mvn -->


[06/23] maven git commit: [MNG-6240] Duplicate components in plugin extension realm when plugin depends on maven-aether-resolver

Posted by hb...@apache.org.
[MNG-6240] Duplicate components in plugin extension realm when plugin depends on maven-aether-resolver

Maven Core needs to export the maven-aether-provider artifact so that its components do not get added twice in plugin realm. This happens if the build uses an extension plugin depending on maven-aether-provider, before it was renamed to maven-resolver-provider


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

Branch: refs/heads/MNG-6196_slf4j
Commit: a1fe42199565f76007a97f47cd4a848fd9b63482
Parents: 12d6471
Author: Guillaume Boué <gb...@apache.org>
Authored: Fri Jun 9 23:25:31 2017 +0200
Committer: Guillaume Boué <gb...@apache.org>
Committed: Wed Jun 14 19:55:41 2017 +0200

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


http://git-wip-us.apache.org/repos/asf/maven/blob/a1fe4219/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 1f0b95f..c5f40b5 100644
--- a/maven-core/src/main/resources/META-INF/maven/extension.xml
+++ b/maven-core/src/main/resources/META-INF/maven/extension.xml
@@ -134,6 +134,11 @@ under the License.
     <exportedArtifact>org.sonatype.sisu:sisu-inject-plexus</exportedArtifact>
     <exportedArtifact>org.eclipse.sisu:org.eclipse.sisu.plexus</exportedArtifact>
     <exportedArtifact>org.apache.maven:maven-artifact</exportedArtifact>
+    <!--
+      | MNG-6240: Plugins might depend on maven-aether-provider <= 3.3.9 before the rename to maven-resolver-provider.
+      | Since backwards-compatibility was kept, Maven Core also provides this artifact.
+     -->
+    <exportedArtifact>org.apache.maven:maven-aether-provider</exportedArtifact>
     <exportedArtifact>org.apache.maven:maven-resolver-provider</exportedArtifact>
     <exportedArtifact>org.apache.maven:maven-artifact-manager</exportedArtifact>
     <exportedArtifact>org.apache.maven:maven-compat</exportedArtifact>


[09/23] maven git commit: [MNG-6123] detect self references in POM and fail fast o Added unit test and self referencing pom

Posted by hb...@apache.org.
[MNG-6123] detect self references in POM and fail fast
 o Added unit test and self referencing pom


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

Branch: refs/heads/MNG-6196_slf4j
Commit: 8f8c45c990193b04c1770997d446951c5185b164
Parents: b100257
Author: Karl Heinz Marbaise <kh...@apache.org>
Authored: Tue Apr 4 22:46:11 2017 +0200
Committer: Karl Heinz Marbaise <kh...@apache.org>
Committed: Tue Aug 1 22:01:36 2017 +0200

----------------------------------------------------------------------
 .../model/validation/DefaultModelValidator.java | 54 ++++++++++++++++++--
 .../validation/DefaultModelValidatorTest.java   | 13 +++++
 .../validation/raw-model/self-referencing.xml   | 38 ++++++++++++++
 3 files changed, 102 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/8f8c45c9/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 2e7985f..d97d8f6 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
@@ -131,6 +131,9 @@ public class DefaultModelValidator
 
             validate20RawDependencies( problems, m.getDependencies(), "dependencies.dependency", request );
 
+            validate20RawDependenciesSelfReferencing( problems, m, m.getDependencies(), "dependencies.dependency",
+                                                      request );
+
             if ( m.getDependencyManagement() != null )
             {
                 validate20RawDependencies( problems, m.getDependencyManagement().getDependencies(),
@@ -344,12 +347,12 @@ public class DefaultModelValidator
 
         Severity errOn30 = getSeverity( request, ModelBuildingRequest.VALIDATION_LEVEL_MAVEN_3_0 );
 
-        validateEffectiveDependencies( problems, m.getDependencies(), false, request );
+        validateEffectiveDependencies( problems, m, m.getDependencies(), false, request );
 
         DependencyManagement mgmt = m.getDependencyManagement();
         if ( mgmt != null )
         {
-            validateEffectiveDependencies( problems, mgmt.getDependencies(), true, request );
+            validateEffectiveDependencies( problems, m, mgmt.getDependencies(), true, request );
         }
 
         if ( request.getValidationLevel() >= ModelBuildingRequest.VALIDATION_LEVEL_MAVEN_2_0 )
@@ -524,7 +527,33 @@ public class DefaultModelValidator
         }
     }
 
-    private void validateEffectiveDependencies( ModelProblemCollector problems, List<Dependency> dependencies,
+    private void validate20RawDependenciesSelfReferencing( ModelProblemCollector problems, Model m,
+                                                           List<Dependency> dependencies, String prefix,
+                                                           ModelBuildingRequest request )
+    {
+        // We only check for groupId/artifactId cause if there is another
+        // module with the same groupId/artifactId this will fail the build 
+        // earlier like "Project '...' is duplicated in the reactor.
+        // So it is sufficient to check only groupId/artifactId and not the
+        // packaging type.
+        for ( Dependency dependency : dependencies )
+        {
+            String key = dependency.getGroupId() + ":" + dependency.getArtifactId() + ":" + dependency.getVersion();
+            String mKey = m.getGroupId() + ":" + m.getArtifactId() + ":" + m.getVersion();
+            if ( key.equals( mKey ) )
+            {
+                // This means a module which is build has a dependency which has the same
+                // groupId, artifactId and version coordinates. This is in consequence
+                // a self reference or in other words a circular reference which can not
+                // being resolved.
+                addViolation( problems, Severity.FATAL, Version.V31, prefix + " " + key, key, "is referencing itself.",
+                              dependency );
+
+            }
+        }
+    }
+
+    private void validateEffectiveDependencies( ModelProblemCollector problems, Model m, List<Dependency> dependencies,
                                                 boolean management, ModelBuildingRequest request )
     {
         Severity errOn30 = getSeverity( request, ModelBuildingRequest.VALIDATION_LEVEL_MAVEN_3_0 );
@@ -551,11 +580,30 @@ public class DefaultModelValidator
                      */
                     validateEnum( prefix + "scope", problems, Severity.WARNING, Version.V20, d.getScope(),
                                   d.getManagementKey(), d, "provided", "compile", "runtime", "test", "system" );
+
+                    validateEffectiveModelAgainstDependency( prefix, problems, m, d, request );
                 }
             }
         }
     }
 
+    private void validateEffectiveModelAgainstDependency( String prefix, ModelProblemCollector problems, Model m,
+                                                          Dependency d, ModelBuildingRequest request )
+    {
+        String key = d.getGroupId() + ":" + d.getArtifactId() + ":" + d.getVersion();
+        String mKey = m.getGroupId() + ":" + m.getArtifactId() + ":" + m.getVersion();
+        if ( key.equals( mKey ) )
+        {
+            // This means a module which is build has a dependency which has the same
+            // groupId, artifactId and version coordinates. This is in consequence
+            // a self reference or in other words a circular reference which can not
+            // being resolved.
+            addViolation( problems, Severity.FATAL, Version.V31, prefix + " " + key, key, "is referencing itself.", d );
+
+        }
+
+    }
+
     private void validate20EffectivePluginDependencies( ModelProblemCollector problems, Plugin plugin,
                                                         ModelBuildingRequest request )
     {

http://git-wip-us.apache.org/repos/asf/maven/blob/8f8c45c9/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 4da3c87..5614daf 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
@@ -714,4 +714,17 @@ public class DefaultModelValidatorTest
         assertContains( result.getWarnings().get( 1 ),
                 "'dependencies.dependency.version' for test:b:jar is either LATEST or RELEASE (both of them are being deprecated)" );
     }
+
+    public void testSelfReferencingDependencyInRawModel()
+        throws Exception
+    {
+        SimpleProblemCollector result = validateRaw( "raw-model/self-referencing.xml" );
+
+        assertViolations( result, 1, 0, 0 );
+
+        assertEquals( "'dependencies.dependency com.example.group:testinvalidpom:0.0.1-SNAPSHOT' for com.example.group:testinvalidpom:0.0.1-SNAPSHOT is referencing itself.",
+                      result.getFatals().get( 0 ) );
+
+    }
+
 }

http://git-wip-us.apache.org/repos/asf/maven/blob/8f8c45c9/maven-model-builder/src/test/resources/poms/validation/raw-model/self-referencing.xml
----------------------------------------------------------------------
diff --git a/maven-model-builder/src/test/resources/poms/validation/raw-model/self-referencing.xml b/maven-model-builder/src/test/resources/poms/validation/raw-model/self-referencing.xml
new file mode 100644
index 0000000..a902896
--- /dev/null
+++ b/maven-model-builder/src/test/resources/poms/validation/raw-model/self-referencing.xml
@@ -0,0 +1,38 @@
+<!--
+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.
+-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<groupId>com.example.group</groupId>
+	<artifactId>testinvalidpom</artifactId>
+	<version>0.0.1-SNAPSHOT</version>
+
+	<description>
+		This will test if the module validator recognized that this 
+		dependency is the same as the module itself.
+	</description>
+	<dependencies>
+		<dependency>
+			<groupId>com.example.group</groupId>
+			<artifactId>testinvalidpom</artifactId>
+			<version>0.0.1-SNAPSHOT</version>
+		</dependency>
+	</dependencies>
+</project>
\ No newline at end of file


[10/23] maven git commit: [MNG-6174] Clean Up Maven Model

Posted by hb...@apache.org.
[MNG-6174] Clean Up Maven Model


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

Branch: refs/heads/MNG-6196_slf4j
Commit: 4f2a2dba89251d9045fe9944783509a397491da3
Parents: 8f8c45c
Author: Karl Heinz Marbaise <kh...@apache.org>
Authored: Sun Feb 19 21:17:31 2017 +0100
Committer: Karl Heinz Marbaise <kh...@apache.org>
Committed: Wed Aug 2 19:31:49 2017 +0200

----------------------------------------------------------------------
 maven-model/src/main/mdo/maven.mdo | 667 --------------------------------
 1 file changed, 667 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/4f2a2dba/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 de800d9..7ba6106 100644
--- a/maven-model/src/main/mdo/maven.mdo
+++ b/maven-model/src/main/mdo/maven.mdo
@@ -83,18 +83,6 @@
         <!-- ====================================================================== -->
 
         <field>
-          <name>pomVersion</name>
-          <version>3.0.0</version>
-          <required>true</required>
-          <type>String</type>
-          <description>
-            <![CDATA[
-            Declares to which version of project descriptor this POM conforms.
-            The only valid value is <code>3</code>.
-            ]]>
-          </description>
-        </field>
-        <field>
           <name>modelVersion</name>
           <version>4.0.0+</version>
           <required>true</required>
@@ -107,20 +95,6 @@
         <!-- ====================================================================== -->
 
         <field xdoc.separator="blank">
-          <name>extend</name>
-          <version>3.0.0</version>
-          <description>
-            <![CDATA[
-            The location of the parent project, if one exists. Values from the
-            parent project will be the default for this project if they are
-            left unspecified. The path may be absolute, or relative to the
-            current <code>project.xml</code> file. For example,
-            <code>&lt;extend&gt;${basedir}/../project.xml&lt;/extend&gt;</code>.
-            ]]>
-          </description>
-          <type>String</type>
-        </field>
-        <field xdoc.separator="blank">
           <name>parent</name>
           <version>4.0.0+</version>
           <description>The location of the parent project, if one exists. Values from the parent
@@ -159,25 +133,6 @@
           <type>String</type>
         </field>
         <field>
-          <name>id</name>
-          <version>3.0.0</version>
-          <required>true</required>
-          <description>
-            <![CDATA[
-            <b>Deprecated</b>. When used, this sets both the <code>groupId</code>
-            and <code>artifactId</code> elements if they were previously empty.
-            ]]>
-          </description>
-          <type>String</type>
-        </field>
-        <field>
-          <name>currentVersion</name>
-          <description>The current version of the artifact produced by this project.</description>
-          <version>3.0.0</version>
-          <required>true</required>
-          <type>String</type>
-        </field>
-        <field>
           <name>version</name>
           <version>4.0.0+</version>
           <required>true</required>
@@ -185,15 +140,6 @@
           <type>String</type>
         </field>
         <field>
-          <name>versions</name>
-          <version>3.0.0</version>
-          <description>Contains information on previous versions of the project.</description>
-          <association>
-            <type>Version</type>
-            <multiplicity>*</multiplicity>
-          </association>
-        </field>
-        <field>
           <name>packaging</name>
           <version>4.0.0+</version>
           <description>
@@ -223,13 +169,6 @@
           <type>String</type>
         </field>
         <field>
-          <name>shortDescription</name>
-          <version>3.0.0</version>
-          <description>A short description of the project. The short description should be limited
-            to a single line.</description>
-          <type>String</type>
-        </field>
-        <field>
           <name>description</name>
           <version>3.0.0+</version>
           <description>A detailed description of the project, used by Maven whenever it needs to
@@ -251,20 +190,6 @@
           <type>String</type>
         </field>
         <field>
-          <name>siteAddress</name>
-          <version>3.0.0</version>
-          <description>The hostname of the web server that hosts the project's web site. This is
-            used when the web site is deployed.</description>
-          <type>String</type>
-        </field>
-        <field>
-          <name>siteDirectory</name>
-          <version>3.0.0</version>
-          <description>The directory on the web server where the public web site for this project
-            resides. This is used when the web site is deployed.</description>
-          <type>String</type>
-        </field>
-        <field>
           <name>inceptionYear</name>
           <version>3.0.0+</version>
           <required>true</required>
@@ -273,20 +198,6 @@
           <type>String</type>
         </field>
         <field>
-          <name>logo</name>
-          <version>3.0.0</version>
-          <description>
-            <![CDATA[
-            The URL of the project's logo image.  This can be an URL relative
-            to the base directory of the generated web site,
-            (e.g., <code>/images/project-logo.png</code>) or an absolute URL
-            (e.g., <code>http://my.corp/project-logo.png</code>). This is used
-            when generating the project documentation.
-            ]]>
-          </description>
-          <type>String</type>
-        </field>
-        <field>
           <name>organization</name>
           <version>3.0.0+</version>
           <description>This element describes various attributes of the organization to which the
@@ -361,27 +272,6 @@
         <!-- SCM                                                                    -->
         <!-- ====================================================================== -->
 
-        <field xdoc.separator="blank">
-          <name>branches</name>
-          <version>3.0.0</version>
-          <description>
-            <![CDATA[
-            Contains information on SCM branches of the project.
-            ]]>
-          </description>
-          <association>
-            <type>Branch</type>
-            <multiplicity>*</multiplicity>
-          </association>
-        </field>
-        <field>
-          <name>repository</name>
-          <version>3.0.0</version>
-          <description>Specification for the SCM used by the project, such as CVS, Subversion, etc.</description>
-          <association>
-            <type>Repository</type>
-          </association>
-        </field>
         <field xdoc.separator="blank" xml.insertParentFieldsUpTo="modules">
           <name>scm</name>
           <version>4.0.0+</version>
@@ -395,12 +285,6 @@
         <!-- Issue Tracking                                                         -->
         <!-- ====================================================================== -->
 
-        <field xdoc.separator="blank">
-          <name>issueTrackingUrl</name>
-          <version>3.0.0</version>
-          <description>The URL of the project's issue tracking system.</description>
-          <type>String</type>
-        </field>
         <field>
           <name>issueManagement</name>
           <version>4.0.0+</version>
@@ -415,12 +299,6 @@
         <!-- ====================================================================== -->
 
         <field>
-          <name>gumpRepositoryId</name>
-          <version>3.0.0</version>
-          <description>This is the repository identifier in Gump that this project is part of.</description>
-          <type>String</type>
-        </field>
-        <field>
           <name>ciManagement</name>
           <version>4.0.0+</version>
           <description>The project's continuous integration information.</description>
@@ -430,83 +308,6 @@
         </field>
 
         <!-- ====================================================================== -->
-        <!-- Distribution Management                                                -->
-        <!-- ====================================================================== -->
-
-        <field>
-          <name>distributionSite</name>
-          <version>3.0.0</version>
-          <description>
-            <![CDATA[
-            The server where the final distributions will be published. This is used when the
-            distributions are deployed. If this isn't defined, the central repository is used instead as
-            determined by <code>maven.repo.central</code> and <code>maven.repo.central.directory</code>.
-            ]]>
-          </description>
-          <type>String</type>
-        </field>
-        <field>
-          <name>distributionDirectory</name>
-          <version>3.0.0</version>
-          <description>The directory on the web server where the final distributions will be
-            published. This is used when the distributions are deployed.</description>
-          <type>String</type>
-        </field>
-
-        <!-- ====================================================================== -->
-        <!-- Specific version 3                                                     -->
-        <!-- ====================================================================== -->
-
-        <field>
-          <name>packageGroups</name>
-          <version>3.0.0</version>
-          <description>Package groups required for complete javadocs.</description>
-          <association>
-            <type>PackageGroup</type>
-            <multiplicity>*</multiplicity>
-          </association>
-        </field>
-        <field>
-          <name>reports</name>
-          <version>3.0.0</version>
-          <description>
-            <![CDATA[
-            This element includes the specification of reports to be
-            included in a Maven-generated site.  These reports will be run
-            when a user executes <code>maven site</code>.  All of the
-            reports will be included in the navigation bar for browsing in
-            the order they are specified.
-            ]]>
-          </description>
-          <association>
-            <type>String</type>
-            <multiplicity>*</multiplicity>
-          </association>
-        </field>
-        <field>
-          <name>properties</name>
-          <version>3.0.0</version>
-          <description>
-            <![CDATA[
-            Project properties that will be used by various plugins.
-            The format is <code>&lt;name&gt;value&lt;/name&gt;</code>.
-            ]]>
-          </description>
-          <type>Properties</type>
-          <association xml.mapStyle="inline">
-            <type>String</type>
-            <multiplicity>*</multiplicity>
-          </association>
-        </field>
-        <field xml.tagName="package">
-          <name>packageName</name>
-          <version>3.0.0</version>
-          <type>String</type>
-          <description>The Java package name of the project. This value is used when generating
-            JavaDoc.</description>
-        </field>
-
-        <!-- ====================================================================== -->
         <!-- Build                                                                  -->
         <!-- ====================================================================== -->
 
@@ -537,33 +338,6 @@
       </fields>
       <codeSegments>
         <codeSegment>
-          <version>3.0.0</version>
-          <code>
-            <![CDATA[
-              public void setVersion(String version)
-              {
-                  this.currentVersion = version;
-              }
-
-              public String getVersion()
-              {
-                  return currentVersion;
-              }
-
-              /* We need this because we can't use package as a field name.*/
-              public void setPackage(String packageName)
-              {
-                  this.packageName = packageName;
-              }
-
-              public String getPackage()
-              {
-                  return packageName;
-              }
-            ]]>
-          </code>
-        </codeSegment>
-        <codeSegment>
           <version>4.0.0+</version>
           <code>
             <![CDATA[
@@ -757,21 +531,6 @@
         </field>
       </fields>
     </class>
-    <class>
-      <name>Branch</name>
-      <version>3.0.0</version>
-      <description>Contains information on the SCM branches of the project.</description>
-      <fields>
-        <field>
-          <name>tag</name>
-          <version>3.0.0</version>
-          <required>true</required>
-          <description>The branch tag in the version control system (e.g. cvs) used by the project
-            for the source code associated with this branch of the project.</description>
-          <type>String</type>
-        </field>
-      </fields>
-    </class>
     <class java.clone="deep">
       <name>PluginContainer</name>
       <version>3.0.0+</version>
@@ -936,14 +695,6 @@
       </description>
       <fields>
         <field>
-          <name>nagEmailAddress</name>
-          <version>3.0.0</version>
-          <description>An address to which notifications regarding the status of builds for this
-            project can be sent. This is intended for use by tools which do unattended builds, for
-            example those providing for continuous integration.</description>
-          <type>String</type>
-        </field>
-        <field>
           <name>sourceDirectory</name>
           <version>3.0.0+</version>
           <required>true</required>
@@ -969,15 +720,6 @@
           <type>String</type>
         </field>
         <field>
-          <name>unitTestSourceDirectory</name>
-          <version>3.0.0</version>
-          <required>true</required>
-          <description>This element specifies a directory containing the unit test source of the
-            project. The generated build system will compile these directories when the project is
-            being tested. The path given is relative to the project descriptor.</description>
-          <type>String</type>
-        </field>
-        <field>
           <name>testSourceDirectory</name>
           <version>4.0.0+</version>
           <required>true</required>
@@ -990,52 +732,6 @@
           <type>String</type>
         </field>
         <field>
-          <name>aspectSourceDirectory</name>
-          <version>3.0.0</version>
-          <description>This element specifies a directory containing Aspect sources of the project.
-            The generated build system will compile the Aspects in this directory when the project
-            is built if Aspects have been enabled. The path given is relative to the project
-            descriptor.</description>
-          <type>String</type>
-        </field>
-        <field>
-          <name>integrationUnitTestSourceDirectory</name>
-          <version>3.0.0</version>
-          <description>
-            <![CDATA[
-            This element is <b>deprecated</b> and should no longer be used.
-            Initially it was used by the first Cactus plugin. Now
-            the location of the Cactus test sources is defined
-            through a plugin property. See the Cactus plugin
-            <a href="http://jakarta.apache.org/cactus/integration/maven/properties.html">properties</a>
-            page.
-            ]]>
-          </description>
-          <type>String</type>
-        </field>
-        <field>
-          <name>sourceModifications</name>
-          <version>3.0.0</version>
-          <required>true</required>
-          <description>This element describes all of the sourceModifications associated with a
-            project. These modifications are used to exclude or include various source depending on
-            the environment the build is running in.</description>
-          <association>
-            <type>SourceModification</type>
-            <multiplicity>*</multiplicity>
-          </association>
-        </field>
-        <field>
-          <name>unitTest</name>
-          <version>3.0.0</version>
-          <required>true</required>
-          <description>This element specifies unit tests associated with the project.</description>
-          <defaultValue>new UnitTest()</defaultValue>
-          <association>
-            <type>UnitTest</type>
-          </association>
-        </field>
-        <field>
           <name>outputDirectory</name>
           <version>4.0.0+</version>
           <description><![CDATA[
@@ -1254,18 +950,6 @@
       </description>
       <fields>
         <field>
-          <name>id</name>
-          <version>3.0.0</version>
-          <required>true</required>
-          <description>
-            <![CDATA[
-            <b>Deprecated</b>. Please use <code>groupId</code> and
-            <code>artifactId</code> together instead.
-            ]]>
-          </description>
-          <type>String</type>
-        </field>
-        <field>
           <name>groupId</name>
           <version>3.0.0+</version>
           <required>true</required>
@@ -1301,36 +985,6 @@
           <type>String</type>
         </field>
         <field>
-          <name>url</name>
-          <version>3.0.0</version>
-          <description>This url will be provided to the user if the jar file cannot be downloaded
-            from the central repository.</description>
-          <type>String</type>
-        </field>
-        <field>
-          <name>jar</name>
-          <version>3.0.0</version>
-          <description>Literal name of the artifact in the repository. Used to override the
-            calculated artifact name.</description>
-          <type>String</type>
-        </field>
-        <field>
-          <name>type</name>
-          <version>3.0.0</version>
-          <description>
-            <![CDATA[
-            The type of dependency. While it
-            usually represents the extension on the filename of the dependency,
-            that is not always the case.
-            Some examples are <code>jar</code>, <code>war</code>, and <code>plugin</code>.
-            A dependency of type <code>plugin</code> is loaded as a Maven plugin and
-            not added to the project build classpath.
-            ]]>
-          </description>
-          <type>String</type>
-          <defaultValue>jar</defaultValue>
-        </field>
-        <field>
           <name>type</name>
           <version>4.0.0+</version>
           <description>
@@ -1371,23 +1025,6 @@
           <required>false</required>
         </field>
         <field>
-          <name>properties</name>
-          <version>3.0.0</version>
-          <description>
-            <![CDATA[
-            Properties about the dependency. Various plugins allow you to
-            mark dependencies with properties. For example the war plugin looks for a
-            <code>war.bundle</code> property, and if found will include the
-            dependency in <code>WEB-INF/lib</code>.
-            ]]>
-          </description>
-          <type>Properties</type>
-          <association xml.mapStyle="inline">
-            <type>String</type>
-            <multiplicity>*</multiplicity>
-          </association>
-        </field>
-        <field>
           <name>scope</name>
           <version>4.0.0+</version>
           <description>
@@ -1450,20 +1087,6 @@
       </fields>
       <codeSegments>
         <codeSegment>
-          <version>3.0.0</version>
-          <code>
-            <![CDATA[
-    /**
-     * @see java.lang.Object#toString()
-     */
-    public String toString()
-    {
-        return groupId + "/" + type + "s:" + artifactId + "-" + version;
-    }
-            ]]>
-          </code>
-        </codeSegment>
-        <codeSegment>
           <version>4.0.0+</version>
           <code>
             <![CDATA[
@@ -1507,111 +1130,6 @@
             ]]>
           </code>
         </codeSegment>
-        <codeSegment>
-          <version>3.0.0</version>
-          <code>
-            <![CDATA[
-    /**
-     * @return the key as <code>id:type</code>
-     */
-    public String getKey()
-    {
-        return getId() + ":" + getType();
-    }
-
-    /**
-     * @return the groupId as artifact directory
-     */
-    public String getArtifactDirectory()
-    {
-        return getGroupId();
-    }
-
-    /**
-     * @return the artifact name as <code>artifactId-version.extension</code> if &lt;jar/&gt; not set
-     */
-    public String getArtifact()
-    {
-        // If the jar name has been explicitly set then use that. This
-        // is when the <jar/> element is explicitly used in the POM.
-        if ( getJar() != null)
-        {
-            return getJar();
-        }
-
-        String artifact;
-
-        if ("ejb-client".equals(getType())) {
-          artifact = getArtifactId() + "-" + getVersion() + "-client." + getExtension();
-        } else {
-          artifact = getArtifactId() + "-" + getVersion() + "." + getExtension();
-        }
-
-        return artifact;
-    }
-
-    public String getTypeDirectory()
-    {
-        String path;
-        if (getType().equals("ejb-client")) {
-            path = "ejbs";
-        } else {
-            path = getType() + "s";
-        }
-
-        return path;
-    }
-
-    public String getExtension()
-    {
-        if ("ejb".equals(getType()) || "ejb-client".equals(getType()) || "plugin".equals(getType()) || "aspect".equals(getType()) || "uberjar".equals(getType())) return "jar";
-        return getType();
-    }
-
-    public boolean isAddedToClasspath()
-    {
-        return ("jar".equals(getType()) || "ejb".equals(getType()) || "ejb-client".equals(getType()) || "sar".equals(getType()));
-    }
-
-    public boolean isPlugin()
-    {
-        return ("plugin".equals(getType()));
-    }
-
-    public String getProperty( String property )
-    {
-        return getProperties().getProperty( property );
-    }
-
-    /**
-     * @see java.lang.Object#equals(java.lang.Object)
-     */
-    public boolean equals( Object o )
-    {
-        if ( this == o )
-        {
-            return true;
-        }
-
-        if ( !( o instanceof Dependency ) )
-        {
-            return false;
-        }
-
-        Dependency d  = (Dependency) o;
-        return getId().equals( d.getId() );
-    }
-
-    /**
-     * @see java.lang.Object#hashCode()
-     */
-    public int hashCode()
-    {
-        return getId().hashCode();
-    }
-            ]]>
-          </code>
-        </codeSegment>
       </codeSegments>
     </class>
     <class>
@@ -1887,39 +1405,6 @@
           <description>The URL to the organization's home page.</description>
           <type>String</type>
         </field>
-        <field>
-          <name>logo</name>
-          <version>3.0.0</version>
-          <description>
-            <![CDATA[
-            The URL to the organization's logo image.  This can be an URL relative
-            to the base directory of the generated web site,
-            (e.g., <code>/images/org-logo.png</code>) or an absolute URL
-            (e.g., <code>http://my.corp/logo.png</code>).  This value is used
-            when generating the project documentation.
-            ]]>
-          </description>
-          <type>String</type>
-        </field>
-      </fields>
-    </class>
-    <class>
-      <name>PackageGroup</name>
-      <version>3.0.0</version>
-      <description>A JavaDoc package group.</description>
-      <fields>
-        <field>
-          <name>title</name>
-          <version>3.0.0</version>
-          <description>The title to use for the package group.</description>
-          <type>String</type>
-        </field>
-        <field>
-          <name>packages</name>
-          <version>3.0.0</version>
-          <description>The packages in the group</description>
-          <type>String</type>
-        </field>
       </fields>
     </class>
     <class java.clone="deep">
@@ -2077,50 +1562,6 @@
       </codeSegments>
 
     </class>
-    <class>
-      <name>Repository</name>
-      <version>3.0.0</version>
-      <description>
-        <![CDATA[
-        The <code>&lt;repository&gt;</code> element contains informations required to a repository
-        used by the project.
-        ]]>
-      </description>
-      <fields>
-        <field>
-          <name>connection</name>
-          <version>3.0.0</version>
-          <description>
-            <![CDATA[
-            The source control management system URL
-            that describes the repository and how to connect to the
-            repository. For more information, see the
-            <a href="https://maven.apache.org/scm/scm-url-format.html">URL format</a>
-            and <a href="https://maven.apache.org/scm/scms-overview.html">list of supported SCMs</a>.
-            This connection is read-only.
-            ]]>
-          </description>
-          <type>String</type>
-        </field>
-        <field>
-          <name>developerConnection</name>
-          <version>3.0.0</version>
-          <description>
-            <![CDATA[
-            Just like <code>connection</code>, but for developers, i.e. this scm connection
-            will not be read only.
-            ]]>
-          </description>
-          <type>String</type>
-        </field>
-        <field>
-          <name>url</name>
-          <version>3.0.0</version>
-          <description>The URL to the project's browsable SCM repository, such as ViewVC or Fisheye.</description>
-          <type>String</type>
-        </field>
-      </fields>
-    </class>
     <class java.clone="deep">
       <name>Scm</name>
       <version>4.0.0+</version>
@@ -2299,114 +1740,6 @@
         </codeSegment>
       </codeSegments>
     </class>
-    <class>
-      <name>SourceModification</name>
-      <description>This element describes all of the source modifications associated with a project.
-        These modifications are used to exclude or include various source depending on the
-        environment the build is running in.</description>
-      <version>3.0.0</version>
-      <superClass>FileSet</superClass>
-      <fields>
-        <field>
-          <name>className</name>
-          <version>3.0.0</version>
-          <description>
-            <![CDATA[
-            If the class with this name can <b>not</b> be
-            loaded, then the includes and excludes specified below
-            will be applied to the contents of the <code>sourceDirectory</code>.
-            ]]>
-          </description>
-          <type>String</type>
-        </field>
-        <field>
-          <name>property</name>
-          <version>3.0.0</version>
-          <description>
-            <![CDATA[
-            If the property with this name is <b>not</b> set,
-            then the includes and excludes specified below
-            will be applied to the contents of the <code>sourceDirectory</code>.
-            ]]>
-          </description>
-          <type>String</type>
-        </field>
-      </fields>
-    </class>
-    <class>
-      <name>UnitTest</name>
-      <version>3.0.0</version>
-      <superClass>PatternSet</superClass>
-      <description>A PatternSet for unit tests.</description>
-      <fields>
-        <field>
-          <name>resources</name>
-          <version>3.0.0</version>
-          <description>The classpath resources to use when executing the unit tests.</description>
-          <association>
-            <type>Resource</type>
-            <multiplicity>*</multiplicity>
-          </association>
-        </field>
-      </fields>
-    </class>
-    <class>
-      <name>Version</name>
-      <version>3.0.0</version>
-      <description>
-        <![CDATA[
-        This element describes each of the previous versions of the
-        project. Each version is described by a <code>version</code>
-        element
-        ]]>
-      </description>
-      <fields>
-        <field>
-          <name>name</name>
-          <version>3.0.0</version>
-          <description>
-            <![CDATA[
-            The external version number under which this release was distributed. Examples include:
-            <code>1.0</code>,
-            <code>1.1-alpha1</code>,
-            <code>1.2-beta</code>,
-            <code>1.3.2</code> etc.
-            ]]>
-          </description>
-          <type>String</type>
-        </field>
-        <field>
-          <name>tag</name>
-          <version>3.0.0</version>
-          <description>The name given in the SCM (e.g. CVS) used by the project for the source code
-            associated with this version of the project.</description>
-          <type>String</type>
-        </field>
-        <field>
-          <name>id</name>
-          <version>3.0.0</version>
-          <description>A unique identifier for a version. This is usually identical to the name.</description>
-          <type>String</type>
-        </field>
-      </fields>
-      <codeSegments>
-        <codeSegment>
-          <version>3.0.0</version>
-          <code>
-            <![CDATA[
-    /**
-     * @see java.lang.Object#toString()
-     */
-    public String toString()
-    {
-        return getId();
-    }
-            ]]>
-          </code>
-        </codeSegment>
-      </codeSegments>
-    </class>
-
     <class java.clone="deep">
       <name>RepositoryBase</name>
       <version>4.0.0+</version>


[12/23] maven git commit: [MNG-6127] Fix plugin execution configuration interference

Posted by hb...@apache.org.
[MNG-6127] Fix plugin execution configuration interference

Signed-off-by: rfscholte <rf...@apache.org>


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

Branch: refs/heads/MNG-6196_slf4j
Commit: f1ed6592b1c701834d1377fade6cdb382a63bbf4
Parents: 842db37
Author: Mario Krizmanic <ma...@gmail.com>
Authored: Tue Aug 15 21:46:29 2017 +0200
Committer: rfscholte <rf...@apache.org>
Committed: Tue Aug 15 21:46:29 2017 +0200

----------------------------------------------------------------------
 .../internal/DefaultLifecyclePluginAnalyzer.java          | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/f1ed6592/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecyclePluginAnalyzer.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecyclePluginAnalyzer.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecyclePluginAnalyzer.java
index aec785f..14653b7 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecyclePluginAnalyzer.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecyclePluginAnalyzer.java
@@ -31,6 +31,7 @@ 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.xml.Xpp3Dom;
 
 import java.util.ArrayList;
 import java.util.Collections;
@@ -190,8 +191,13 @@ public class DefaultLifecyclePluginAnalyzer
                 execution.setPhase( phase );
                 execution.setPriority( i - mojos.size() );
                 execution.getGoals().add( gs.goal );
-                execution.setConfiguration( mojo.getConfiguration() );
-                
+
+                Xpp3Dom lifecycleConfiguration = mojo.getConfiguration();
+                if ( lifecycleConfiguration != null )
+                {
+                    execution.setConfiguration( new Xpp3Dom( lifecycleConfiguration ) );
+                }
+
                 plugin.setDependencies( mojo.getDependencies() );
                 plugin.getExecutions().add( execution );
             }


[20/23] maven git commit: [maven-release-plugin] prepare for next development iteration

Posted by hb...@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/312eb535
Tree: http://git-wip-us.apache.org/repos/asf/maven/tree/312eb535
Diff: http://git-wip-us.apache.org/repos/asf/maven/diff/312eb535

Branch: refs/heads/MNG-6196_slf4j
Commit: 312eb53502b78355ab21e27610e7ef253990f574
Parents: 094e4e3
Author: Stephen Connolly <st...@gmail.com>
Authored: Sun Sep 10 12:51:43 2017 +0100
Committer: Stephen Connolly <st...@gmail.com>
Committed: Sun Sep 10 12:51:43 2017 +0100

----------------------------------------------------------------------
 apache-maven/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-resolver-provider/pom.xml   | 2 +-
 maven-settings-builder/pom.xml    | 2 +-
 maven-settings/pom.xml            | 2 +-
 maven-slf4j-provider/pom.xml      | 2 +-
 pom.xml                           | 4 ++--
 15 files changed, 16 insertions(+), 16 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/312eb535/apache-maven/pom.xml
----------------------------------------------------------------------
diff --git a/apache-maven/pom.xml b/apache-maven/pom.xml
index eb97543..4d9b78c 100644
--- a/apache-maven/pom.xml
+++ b/apache-maven/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.5.1</version>
+    <version>3.5.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>apache-maven</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/312eb535/maven-artifact/pom.xml
----------------------------------------------------------------------
diff --git a/maven-artifact/pom.xml b/maven-artifact/pom.xml
index 8a978a8..8c99f33 100644
--- a/maven-artifact/pom.xml
+++ b/maven-artifact/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.5.1</version>
+    <version>3.5.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-artifact</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/312eb535/maven-builder-support/pom.xml
----------------------------------------------------------------------
diff --git a/maven-builder-support/pom.xml b/maven-builder-support/pom.xml
index 02682ab..308f55d 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.5.1</version>
+    <version>3.5.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-builder-support</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/312eb535/maven-compat/pom.xml
----------------------------------------------------------------------
diff --git a/maven-compat/pom.xml b/maven-compat/pom.xml
index 9d3542e..1b1cd3c 100644
--- a/maven-compat/pom.xml
+++ b/maven-compat/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.5.1</version>
+    <version>3.5.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-compat</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/312eb535/maven-core/pom.xml
----------------------------------------------------------------------
diff --git a/maven-core/pom.xml b/maven-core/pom.xml
index 78a7dc6..a9028c4 100644
--- a/maven-core/pom.xml
+++ b/maven-core/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.5.1</version>
+    <version>3.5.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-core</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/312eb535/maven-embedder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-embedder/pom.xml b/maven-embedder/pom.xml
index b759470..c252426 100644
--- a/maven-embedder/pom.xml
+++ b/maven-embedder/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.5.1</version>
+    <version>3.5.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-embedder</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/312eb535/maven-model-builder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-model-builder/pom.xml b/maven-model-builder/pom.xml
index d44ff50..e86193c 100644
--- a/maven-model-builder/pom.xml
+++ b/maven-model-builder/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.5.1</version>
+    <version>3.5.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-model-builder</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/312eb535/maven-model/pom.xml
----------------------------------------------------------------------
diff --git a/maven-model/pom.xml b/maven-model/pom.xml
index a321d35..da104fd 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.5.1</version>
+    <version>3.5.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-model</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/312eb535/maven-plugin-api/pom.xml
----------------------------------------------------------------------
diff --git a/maven-plugin-api/pom.xml b/maven-plugin-api/pom.xml
index 9e81210..6477875 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.5.1</version>
+    <version>3.5.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-plugin-api</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/312eb535/maven-repository-metadata/pom.xml
----------------------------------------------------------------------
diff --git a/maven-repository-metadata/pom.xml b/maven-repository-metadata/pom.xml
index 18c23bf..6395d2d 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.5.1</version>
+    <version>3.5.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-repository-metadata</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/312eb535/maven-resolver-provider/pom.xml
----------------------------------------------------------------------
diff --git a/maven-resolver-provider/pom.xml b/maven-resolver-provider/pom.xml
index c78fde1..1d3505c 100644
--- a/maven-resolver-provider/pom.xml
+++ b/maven-resolver-provider/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.5.1</version>
+    <version>3.5.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-resolver-provider</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/312eb535/maven-settings-builder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-settings-builder/pom.xml b/maven-settings-builder/pom.xml
index dd60239..45a5ffd 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.5.1</version>
+    <version>3.5.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-settings-builder</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/312eb535/maven-settings/pom.xml
----------------------------------------------------------------------
diff --git a/maven-settings/pom.xml b/maven-settings/pom.xml
index cd00975..8266761 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.5.1</version>
+    <version>3.5.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-settings</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/312eb535/maven-slf4j-provider/pom.xml
----------------------------------------------------------------------
diff --git a/maven-slf4j-provider/pom.xml b/maven-slf4j-provider/pom.xml
index e7fdf96..68912f5 100644
--- a/maven-slf4j-provider/pom.xml
+++ b/maven-slf4j-provider/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <groupId>org.apache.maven</groupId>
     <artifactId>maven</artifactId>
-    <version>3.5.1</version>
+    <version>3.5.2-SNAPSHOT</version>
   </parent>
 
   <artifactId>maven-slf4j-provider</artifactId>

http://git-wip-us.apache.org/repos/asf/maven/blob/312eb535/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 2c97f6b..4a79956 100644
--- a/pom.xml
+++ b/pom.xml
@@ -30,7 +30,7 @@ under the License.
   </parent>
 
   <artifactId>maven</artifactId>
-  <version>3.5.1</version>
+  <version>3.5.2-SNAPSHOT</version>
   <packaging>pom</packaging>
 
   <name>Apache Maven</name>
@@ -98,7 +98,7 @@ under the License.
     <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.5.1</tag>
+    <tag>master</tag>
   </scm>
   <issueManagement>
     <system>jira</system>


[04/23] maven git commit: [MNG-6186] fixed path to jansi native libs in distribution

Posted by hb...@apache.org.
[MNG-6186] fixed path to jansi native libs in distribution

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

Branch: refs/heads/MNG-6196_slf4j
Commit: 707cff6ffdecbfb0e0356c70e3a7b490535e7ce4
Parents: eb6b212
Author: Hervé Boutemy <hb...@apache.org>
Authored: Sat Jun 10 08:04:43 2017 +0200
Committer: Hervé Boutemy <hb...@apache.org>
Committed: Sat Jun 10 08:04:43 2017 +0200

----------------------------------------------------------------------
 apache-maven/src/bin/mvn     | 2 +-
 apache-maven/src/bin/mvn.cmd | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/707cff6f/apache-maven/src/bin/mvn
----------------------------------------------------------------------
diff --git a/apache-maven/src/bin/mvn b/apache-maven/src/bin/mvn
index 525b2ef..fa6164b 100755
--- a/apache-maven/src/bin/mvn
+++ b/apache-maven/src/bin/mvn
@@ -194,6 +194,6 @@ exec "$JAVACMD" \
   -classpath "${CLASSWORLDS_JAR}" \
   "-Dclassworlds.conf=${MAVEN_HOME}/bin/m2.conf" \
   "-Dmaven.home=${MAVEN_HOME}" \
-  "-Dlibrary.jansi.path=${MAVEN_HOME}/jansi-native" \
+  "-Dlibrary.jansi.path=${MAVEN_HOME}/lib/jansi-native" \
   "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
   ${CLASSWORLDS_LAUNCHER} "$@"

http://git-wip-us.apache.org/repos/asf/maven/blob/707cff6f/apache-maven/src/bin/mvn.cmd
----------------------------------------------------------------------
diff --git a/apache-maven/src/bin/mvn.cmd b/apache-maven/src/bin/mvn.cmd
index ba61f80..7b0b271 100644
--- a/apache-maven/src/bin/mvn.cmd
+++ b/apache-maven/src/bin/mvn.cmd
@@ -181,7 +181,7 @@ set CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
   -classpath %CLASSWORLDS_JAR% ^
   "-Dclassworlds.conf=%MAVEN_HOME%\bin\m2.conf" ^
   "-Dmaven.home=%MAVEN_HOME%" ^
-  "-Dlibrary.jansi.path=%MAVEN_HOME%\jansi-native" ^
+  "-Dlibrary.jansi.path=%MAVEN_HOME%\lib\jansi-native" ^
   "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^
   %CLASSWORLDS_LAUNCHER% %MAVEN_CMD_LINE_ARGS%
 if ERRORLEVEL 1 goto error