svn commit: r534893 - in /maven/release/trunk: maven-release-manager/src/main/java/org/apache/maven/shared/release/ maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/ maven-rel
Author: evenisse Date: Thu May 3 07:41:44 2007 New Revision: 534893 URL: http://svn.apache.org/viewvc?view=rev&rev=534893 Log: [MRELEASE-179] Add release:branch mojo. This mojo create a branch of the current code, ask for versions branch (default is the current versions) then ask for current code versions (default is next snapshots) Added: maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/RewritePomsForBranchPhase.java (with props) maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/ScmBranchPhase.java (with props) maven/release/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/BranchReleaseMojo.java (with props) Modified: maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/DefaultReleaseManager.java maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/ReleaseManager.java maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/MapVersionsPhase.java maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/scm/ClearCaseScmTranslator.java maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/scm/CvsScmTranslator.java maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/scm/ScmTranslator.java maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/scm/SubversionScmTranslator.java maven/release/trunk/maven-release-manager/src/main/resources/META-INF/plexus/components.xml Modified: maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/DefaultReleaseManager.java URL: http://svn.apache.org/viewvc/maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/DefaultReleaseManager.java?view=diff&rev=534893&r1=534892&r2=534893 == --- maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/DefaultReleaseManager.java (original) +++ maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/DefaultReleaseManager.java Thu May 3 07:41:44 2007 @@ -60,6 +60,11 @@ private List rollbackPhases; /** + * The phases to create a branch. + */ +private List branchPhases; + +/** * The available phases. */ private Map releasePhases; @@ -321,6 +326,49 @@ updateListener( listener, "perform", GOAL_END ); } +public void branch( ReleaseDescriptor releaseDescriptor, Settings settings, List reactorProjects, boolean dryRun ) +throws ReleaseExecutionException, ReleaseFailureException +{ +branch( releaseDescriptor, settings, reactorProjects, dryRun, null ); +} + +public void branch( ReleaseDescriptor releaseDescriptor, Settings settings, List reactorProjects, boolean dryRun, +ReleaseManagerListener listener ) +throws ReleaseExecutionException, ReleaseFailureException +{ +updateListener( listener, "branch", GOAL_START ); + +releaseDescriptor = loadReleaseDescriptor( releaseDescriptor, listener ); + +for ( Iterator phases = branchPhases.iterator(); phases.hasNext(); ) +{ +String name = (String) phases.next(); + +ReleasePhase phase = (ReleasePhase) releasePhases.get( name ); + +if ( phase == null ) +{ +throw new ReleaseExecutionException( "Unable to find phase '" + name + "' to execute" ); +} + +updateListener( listener, name, PHASE_START ); +if ( dryRun ) +{ +phase.simulate( releaseDescriptor, settings, reactorProjects ); +} +else +{ +phase.execute( releaseDescriptor, settings, reactorProjects ); +} +updateListener( listener, name, PHASE_END ); +} + +//call release:clean so that resume will not be possible anymore after a perform +clean( releaseDescriptor, listener, reactorProjects ); + +updateListener( listener, "branch", GOAL_END ); +} + /** * Determines the path of the working directory. By default, this is the * checkout directory. For some SCMs, the project root directory is not the @@ -429,6 +477,10 @@ else if ( "rollback".equals( name ) ) { phases.addAll( this.rollbackPhases ); +} +else if ( "branch".equals( name ) ) +{ +phases.addAll( this.branchPhases ); } return Collections.unmodifiableList( phases ); Modified: maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/ReleaseManager.java URL:
svn commit: r534906 - in /maven/release/trunk/maven-release-manager/src/main: java/org/apache/maven/shared/release/phase/AbstractRunGoalsPhase.java java/org/apache/maven/shared/release/phase/CheckoutP
Author: evenisse Date: Thu May 3 08:13:27 2007 New Revision: 534906 URL: http://svn.apache.org/viewvc?view=rev&rev=534906 Log: Readd releative path to the project deleted by mistake in r.534241 Modified: maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/AbstractRunGoalsPhase.java maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/CheckoutProjectFromScm.java maven/release/trunk/maven-release-manager/src/main/mdo/release-descriptor.mdo Modified: maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/AbstractRunGoalsPhase.java URL: http://svn.apache.org/viewvc/maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/AbstractRunGoalsPhase.java?view=diff&rev=534906&r1=534905&r2=534906 == --- maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/AbstractRunGoalsPhase.java (original) +++ maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/AbstractRunGoalsPhase.java Thu May 3 08:13:27 2007 @@ -56,8 +56,9 @@ { logInfo( result, "Executing goals '" + goals + "'..." ); -mavenExecutor.executeGoals( workingDirectory, goals, releaseDescriptor.isInteractive(), -additionalArguments, result ); +mavenExecutor.executeGoals( determineWorkingDirectory( workingDirectory, + releaseDescriptor.getScmRelativePathProjectDirectory() ), +goals, releaseDescriptor.isInteractive(), additionalArguments, result ); } } catch ( MavenExecutorException e ) @@ -76,4 +77,26 @@ } protected abstract String getGoals( ReleaseDescriptor releaseDescriptor ); + +/** + * Determines the path of the working directory. By default, this is the + * checkout directory. For some SCMs, the project root directory is not the + * checkout directory itself, but a SCM-specific subdirectory. + * + * @param checkoutDirectoryThe checkout directory as java.io.File + * @param relativePathProjectDirectory The relative path of the project directory within the checkout + * directory or "" + * @return The working directory + */ +protected File determineWorkingDirectory( File checkoutDirectory, String relativePathProjectDirectory ) +{ +if ( StringUtils.isNotEmpty( relativePathProjectDirectory ) ) +{ +return new File( checkoutDirectory, relativePathProjectDirectory ); +} +else +{ +return checkoutDirectory; +} +} } Modified: maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/CheckoutProjectFromScm.java URL: http://svn.apache.org/viewvc/maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/CheckoutProjectFromScm.java?view=diff&rev=534906&r1=534905&r2=534906 == --- maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/CheckoutProjectFromScm.java (original) +++ maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/CheckoutProjectFromScm.java Thu May 3 08:13:27 2007 @@ -133,6 +133,8 @@ throw new ReleaseExecutionException( "An error is occurred in the checkout process: " + e.getMessage(), e ); } + +releaseDescriptor.setScmRelativePathProjectDirectory( scmResult.getRelativePathProjectDirectory()); if ( !scmResult.isSuccess() ) { result.setResultCode( ReleaseResult.ERROR ); Modified: maven/release/trunk/maven-release-manager/src/main/mdo/release-descriptor.mdo URL: http://svn.apache.org/viewvc/maven/release/trunk/maven-release-manager/src/main/mdo/release-descriptor.mdo?view=diff&rev=534906&r1=534905&r2=534906 == --- maven/release/trunk/maven-release-manager/src/main/mdo/release-descriptor.mdo (original) +++ maven/release/trunk/maven-release-manager/src/main/mdo/release-descriptor.mdo Thu May 3 08:13:27 2007 @@ -135,6 +135,14 @@ if the SCM does not support edit mode, or if edit mode is compulsory for the given SCM. + + scmRelativePathProjectDirectory + 1.0.0 + String + +Relative path of the project returned by the checkout command. + + releaseVersions
svn commit: r534974 - in /maven/components/trunk: ./ maven-core/src/main/java/org/apache/maven/extension/ maven-core/src/main/java/org/apache/maven/plugin/ maven-core/src/test/java/org/apache/maven/pl
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 @@ - @@ -131,11 +130,6 @@ - - - - - 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 ple
svn commit: r535053 - in /maven/sandbox/trunk/enterprise/enterprise-web: pom.xml src/main/webapp/WEB-INF/plexus.xml src/main/webapp/WEB-INF/web.xml
Author: handyande Date: Thu May 3 18:28:52 2007 New Revision: 535053 URL: http://svn.apache.org/viewvc?view=rev&rev=535053 Log: Use the now correctly working plexus-servlet Removed: maven/sandbox/trunk/enterprise/enterprise-web/src/main/webapp/WEB-INF/plexus.xml Modified: maven/sandbox/trunk/enterprise/enterprise-web/pom.xml maven/sandbox/trunk/enterprise/enterprise-web/src/main/webapp/WEB-INF/web.xml Modified: maven/sandbox/trunk/enterprise/enterprise-web/pom.xml URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/enterprise/enterprise-web/pom.xml?view=diff&rev=535053&r1=535052&r2=535053 == --- maven/sandbox/trunk/enterprise/enterprise-web/pom.xml (original) +++ maven/sandbox/trunk/enterprise/enterprise-web/pom.xml Thu May 3 18:28:52 2007 @@ -65,8 +65,8 @@ org.codehaus.plexus - plexus-xwork-integration - 1.0-alpha-5 + plexus-servlet + 1.0-beta-7-SNAPSHOT Modified: maven/sandbox/trunk/enterprise/enterprise-web/src/main/webapp/WEB-INF/web.xml URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/enterprise/enterprise-web/src/main/webapp/WEB-INF/web.xml?view=diff&rev=535053&r1=535052&r2=535053 == --- maven/sandbox/trunk/enterprise/enterprise-web/src/main/webapp/WEB-INF/web.xml (original) +++ maven/sandbox/trunk/enterprise/enterprise-web/src/main/webapp/WEB-INF/web.xml Thu May 3 18:28:52 2007 @@ -5,7 +5,7 @@ Maven Enterprise - org.codehaus.plexus.xwork.PlexusLifecycleListener + org.codehaus.plexus.servlet.PlexusServletContextListener
svn commit: r535113 - /maven/shared/trunk/maven-enforcer-rule-api/pom.xml
Author: mkleint Date: Thu May 3 23:48:45 2007 New Revision: 535113 URL: http://svn.apache.org/viewvc?view=rev&rev=535113 Log: remove obsolete dependencies Modified: maven/shared/trunk/maven-enforcer-rule-api/pom.xml Modified: maven/shared/trunk/maven-enforcer-rule-api/pom.xml URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-enforcer-rule-api/pom.xml?view=diff&rev=535113&r1=535112&r2=535113 == --- maven/shared/trunk/maven-enforcer-rule-api/pom.xml (original) +++ maven/shared/trunk/maven-enforcer-rule-api/pom.xml Thu May 3 23:48:45 2007 @@ -83,16 +83,6 @@ org.apache.maven - maven-project - 2.0.5 - - - org.apache.maven - maven-core - 2.0.5 - - - org.apache.maven maven-plugin-api 2.0.5