You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by rf...@apache.org on 2013/06/09 12:42:01 UTC
svn commit: r1491179 - in /maven/enforcer/trunk:
enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/
maven-enforcer-plugin/src/it/projects/require-upper-bound-dependencies-unique_failure/
Author: rfscholte
Date: Sun Jun 9 10:42:01 2013
New Revision: 1491179
URL: http://svn.apache.org/r1491179
Log:
[MENFORCER-134] Require Upper Bound Dependencies and matching Snapshot Dependencies
Improve IT
Added:
maven/enforcer/trunk/maven-enforcer-plugin/src/it/projects/require-upper-bound-dependencies-unique_failure/verify.groovy
Modified:
maven/enforcer/trunk/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequireUpperBoundDeps.java
maven/enforcer/trunk/maven-enforcer-plugin/src/it/projects/require-upper-bound-dependencies-unique_failure/pom.xml
Modified: maven/enforcer/trunk/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequireUpperBoundDeps.java
URL: http://svn.apache.org/viewvc/maven/enforcer/trunk/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequireUpperBoundDeps.java?rev=1491179&r1=1491178&r2=1491179&view=diff
==============================================================================
--- maven/enforcer/trunk/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequireUpperBoundDeps.java (original)
+++ maven/enforcer/trunk/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequireUpperBoundDeps.java Sun Jun 9 10:42:01 2013
@@ -261,15 +261,30 @@ public class RequireUpperBoundDeps
@SuppressWarnings( "unchecked" )
private boolean containsConflicts( List<DependencyNodeHopCountPair> pairs )
{
- ArtifactVersion resolvedVersion = pairs.get( 0 ).extractArtifactVersion( uniqueVersions );
- for ( DependencyNodeHopCountPair pair : pairs )
+ if ( pairs.size() > 1 )
{
- ArtifactVersion version = pair.extractArtifactVersion( uniqueVersions );
- if ( resolvedVersion.compareTo( version ) < 0 )
+ DependencyNodeHopCountPair resolvedPair = pairs.get( 0 );
+
+ // search for artifact with lowest hopCount
+ for ( DependencyNodeHopCountPair hopPair : pairs )
{
- return true;
+ if ( hopPair.getHopCount() < resolvedPair.getHopCount() )
+ {
+ resolvedPair = hopPair;
+ }
}
- }
+
+ ArtifactVersion resolvedVersion = resolvedPair.extractArtifactVersion( uniqueVersions );
+
+ for ( DependencyNodeHopCountPair pair : pairs )
+ {
+ ArtifactVersion version = pair.extractArtifactVersion( uniqueVersions );
+ if ( resolvedVersion.compareTo( version ) < 0 )
+ {
+ return true;
+ }
+ }
+ }
return false;
}
Modified: maven/enforcer/trunk/maven-enforcer-plugin/src/it/projects/require-upper-bound-dependencies-unique_failure/pom.xml
URL: http://svn.apache.org/viewvc/maven/enforcer/trunk/maven-enforcer-plugin/src/it/projects/require-upper-bound-dependencies-unique_failure/pom.xml?rev=1491179&r1=1491178&r2=1491179&view=diff
==============================================================================
--- maven/enforcer/trunk/maven-enforcer-plugin/src/it/projects/require-upper-bound-dependencies-unique_failure/pom.xml (original)
+++ maven/enforcer/trunk/maven-enforcer-plugin/src/it/projects/require-upper-bound-dependencies-unique_failure/pom.xml Sun Jun 9 10:42:01 2013
@@ -21,7 +21,7 @@
<configuration>
<rules>
<requireUpperBoundDeps>
- <unique>true</unique>
+ <uniqueVersions>true</uniqueVersions>
</requireUpperBoundDeps>
</rules>
</configuration>
Added: maven/enforcer/trunk/maven-enforcer-plugin/src/it/projects/require-upper-bound-dependencies-unique_failure/verify.groovy
URL: http://svn.apache.org/viewvc/maven/enforcer/trunk/maven-enforcer-plugin/src/it/projects/require-upper-bound-dependencies-unique_failure/verify.groovy?rev=1491179&view=auto
==============================================================================
--- maven/enforcer/trunk/maven-enforcer-plugin/src/it/projects/require-upper-bound-dependencies-unique_failure/verify.groovy (added)
+++ maven/enforcer/trunk/maven-enforcer-plugin/src/it/projects/require-upper-bound-dependencies-unique_failure/verify.groovy Sun Jun 9 10:42:01 2013
@@ -0,0 +1,21 @@
+/*
+ * 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.
+ */
+File buildLog = new File( basedir, 'build.log' )
+assert buildLog.text.contains( 'Rule 0: org.apache.maven.plugins.enforcer.RequireUpperBoundDeps failed with message:' )
+assert buildLog.text.contains( 'Require upper bound dependencies error for org.apache.maven.plugins.enforcer.its:menforcer134_model:1.0-20130423.042904-7222 paths to dependency are:' )