Author: jvanzyl Date: Thu May 3 12:50:08 2007 New Revision: 534974 URL: http://svn.apache.org/viewvc?view=rev&rev=534974 Log: o we simply can't survive right now without inserting plexus utils, we just have too many builds without declared dependencies on it o cleaning up some unused stuff from the bootstrap
Modified: maven/components/trunk/build.properties maven/components/trunk/build.xml maven/components/trunk/maven-core/src/main/java/org/apache/maven/extension/DefaultExtensionManager.java maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java maven/components/trunk/maven-core/src/test/java/org/apache/maven/plugin/PluginParameterExpressionEvaluatorTest.java Modified: maven/components/trunk/build.properties URL: http://svn.apache.org/viewvc/maven/components/trunk/build.properties?view=diff&rev=534974&r1=534973&r2=534974 ============================================================================== --- maven/components/trunk/build.properties (original) +++ maven/components/trunk/build.properties Thu May 3 12:50:08 2007 @@ -19,11 +19,8 @@ plexus-active-collections.version=1.0-beta-1 plexus.version=1.0-alpha-24 plexus-utils.version=1.4.1 -plexus-interactivity-api.version=1.0-alpha-6-SNAPSHOT commons-cli.version=1.0 -commons-lang.version=2.1 wagon.version=1.0-beta-2 -jsch.version=0.1.27 doxia.version=1.0-alpha-9-SNAPSHOT modello.version=1.0-alpha-13 junit.version=3.8.1 Modified: maven/components/trunk/build.xml URL: http://svn.apache.org/viewvc/maven/components/trunk/build.xml?view=diff&rev=534974&r1=534973&r2=534974 ============================================================================== --- maven/components/trunk/build.xml (original) +++ maven/components/trunk/build.xml Thu May 3 12:50:08 2007 @@ -121,7 +121,6 @@ <pull orgpath="org/codehaus/plexus/plexus-container-default" version="${plexus.version}" name="plexus-container-default" repository="codehaus"/> <pull orgpath="org/codehaus/plexus/plexus-component-api" version="${plexus.version}" name="plexus-component-api" repository="codehaus"/> <pull orgpath="org/codehaus/plexus/plexus-classworlds" version="${classworlds.version}" name="plexus-classworlds" repository="codehaus"/> - <pull orgpath="org/codehaus/plexus/plexus-interactivity-api" version="${plexus-interactivity-api.version}" name="plexus-interactivity-api" repository="codehaus"/> <pull orgpath="org/apache/maven/maven-parent" version="4" name="maven-parent" type="pom"/> <pull orgpath="org/apache/maven/plugins/maven-plugins" version="4-SNAPSHOT" name="maven-plugins" type="pom"/> <pull orgpath="org/apache/apache" version="3" name="apache" type="pom"/> @@ -131,11 +130,6 @@ <pull orgpath="org/apache/maven/wagon/wagon-http-shared" version="${wagon.version}" name="wagon-http-shared"/> <pull orgpath="org/apache/maven/wagon/wagon-http-lightweight" version="${wagon.version}" name="wagon-http-lightweight"/> <pull orgpath="org/apache/maven/wagon/wagon-provider-api" version="${wagon.version}" name="wagon-provider-api"/> - <pull orgpath="org/apache/maven/wagon/wagon-ssh-external" version="${wagon.version}" name="wagon-ssh-external"/> - <pull orgpath="org/apache/maven/wagon/wagon-ssh-common" version="${wagon.version}" name="wagon-ssh-common"/> - <pull orgpath="org/apache/maven/wagon/wagon-ssh" version="${wagon.version}" name="wagon-ssh"/> - <pull orgpath="commons-lang/commons-lang" version="${commons-lang.version}" name="commons-lang"/> - <pull orgpath="com/jcraft/jsch" version="${jsch.version}" name="jsch"/> <!-- Wagon Deps (End) --> <pull orgpath="org/apache/maven/doxia/doxia-sink-api" version="${doxia.version}" name="doxia-sink-api"/> <pull orgpath="org/codehaus/modello/modello-core" version="${modello.version}" name="modello-core" repository="codehaus"/> Modified: maven/components/trunk/maven-core/src/main/java/org/apache/maven/extension/DefaultExtensionManager.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-core/src/main/java/org/apache/maven/extension/DefaultExtensionManager.java?view=diff&rev=534974&r1=534973&r2=534974 ============================================================================== --- maven/components/trunk/maven-core/src/main/java/org/apache/maven/extension/DefaultExtensionManager.java (original) +++ maven/components/trunk/maven-core/src/main/java/org/apache/maven/extension/DefaultExtensionManager.java Thu May 3 12:50:08 2007 @@ -20,11 +20,10 @@ */ import org.apache.maven.ArtifactFilterManager; -import org.apache.maven.wagon.Wagon; import org.apache.maven.artifact.Artifact; import org.apache.maven.artifact.ArtifactUtils; -import org.apache.maven.artifact.manager.WagonManager; import org.apache.maven.artifact.factory.ArtifactFactory; +import org.apache.maven.artifact.manager.WagonManager; import org.apache.maven.artifact.metadata.ArtifactMetadataSource; import org.apache.maven.artifact.repository.ArtifactRepository; import org.apache.maven.artifact.resolver.ArtifactNotFoundException; @@ -39,7 +38,6 @@ import org.codehaus.plexus.PlexusConstants; import org.codehaus.plexus.PlexusContainer; import org.codehaus.plexus.PlexusContainerException; -import org.codehaus.plexus.component.repository.exception.ComponentLookupException; import org.codehaus.plexus.context.Context; import org.codehaus.plexus.context.ContextException; import org.codehaus.plexus.logging.AbstractLogEnabled; Modified: maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java?view=diff&rev=534974&r1=534973&r2=534974 ============================================================================== --- maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java (original) +++ maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java Thu May 3 12:50:08 2007 @@ -455,6 +455,8 @@ pluginArtifact.getId() + "': " + e.getMessage(), pluginArtifact, e ); } + checkPlexusUtils( resolutionGroup, artifactFactory ); + Set dependencies = new HashSet( resolutionGroup.getArtifacts() ); List repositories = new ArrayList(); @@ -1316,4 +1318,54 @@ return container.lookupMap( role, pluginRealm ); } + + public static void checkPlexusUtils( ResolutionGroup resolutionGroup, ArtifactFactory artifactFactory ) + { + // ---------------------------------------------------------------------------- + // If the plugin already declares a dependency on plexus-utils then we're all + // set as the plugin author is aware of its use. If we don't have a dependency + // on plexus-utils then we must protect users from stupid plugin authors who + // did not declare a direct dependency on plexus-utils because the version + // Maven uses is hidden from downstream use. We will also bump up any + // anything below 1.1 to 1.1 as this mimics the behaviour in 2.0.5 where + // plexus-utils 1.1 was being forced into use. + // ---------------------------------------------------------------------------- + + VersionRange vr = null; + + try + { + vr = VersionRange.createFromVersionSpec( "[1.1,)" ); + } + catch ( InvalidVersionSpecificationException e ) + { + // Won't happen + } + + boolean plexusUtilsPresent = false; + + for ( Iterator i = resolutionGroup.getArtifacts().iterator(); i.hasNext(); ) + { + Artifact a = (Artifact) i.next(); + + if ( a.getArtifactId().equals( "plexus-utils" ) && + vr.containsVersion( new DefaultArtifactVersion( a.getVersion() ) ) ) + { + plexusUtilsPresent = true; + + break; + } + } + + if ( !plexusUtilsPresent ) + { + // We will add plexus-utils as every plugin was getting this anyway from Maven itself. We will set the + // version to the latest version we know that works as of the 2.0.6 release. We set the scope to runtime + // as this is what's implicitly happening in 2.0.6. + + resolutionGroup.getArtifacts().add( artifactFactory.createArtifact( "org.codehaus.plexus", + "plexus-utils", "1.1", + Artifact.SCOPE_RUNTIME, "jar" ) ); + } + } } Modified: maven/components/trunk/maven-core/src/test/java/org/apache/maven/plugin/PluginParameterExpressionEvaluatorTest.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-core/src/test/java/org/apache/maven/plugin/PluginParameterExpressionEvaluatorTest.java?view=diff&rev=534974&r1=534973&r2=534974 ============================================================================== --- maven/components/trunk/maven-core/src/test/java/org/apache/maven/plugin/PluginParameterExpressionEvaluatorTest.java (original) +++ maven/components/trunk/maven-core/src/test/java/org/apache/maven/plugin/PluginParameterExpressionEvaluatorTest.java Thu May 3 12:50:08 2007 @@ -48,6 +48,7 @@ import java.util.List; import java.util.Properties; + /** * @author <a href="mailto:[EMAIL PROTECTED]">Jason van Zyl </a> * @version $Id: PluginParameterExpressionEvaluatorTest.java,v 1.5 2005/03/08