Commit Graph

182 Commits

Author SHA1 Message Date
Trygve Laugstol f895e06d85 o Organizing imports.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@267176 13f79535-47bb-0310-9956-ffa450edef68
2005-09-02 10:29:02 +00:00
Brett Leslie Porter c7aa0230e6 fix regression - activate artifacts need no resolution
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@266730 13f79535-47bb-0310-9956-ffa450edef68
2005-09-02 08:21:14 +00:00
Brett Leslie Porter abd4ae6018 PR: MNG-613
make repository metadata behave more like snapshots with daily updates.
next step is to move the version checking to use that instead and fallback to the old files

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@266298 13f79535-47bb-0310-9956-ffa450edef68
2005-09-02 07:16:16 +00:00
John Dennis Casey 8201bb9d18 Adding system scope...uses scope == 'system' and systemPath in dependency. SystemPath was chosen over mappings inside the setings.xml for scalability, heritability, and injectability (via managed deps).
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@264960 13f79535-47bb-0310-9956-ffa450edef68
2005-08-31 07:39:01 +00:00
Brett Leslie Porter e0457b0204 PR: MNG-613
reorganise in preparation for generalised repository metadata

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@264091 13f79535-47bb-0310-9956-ffa450edef68
2005-08-29 06:37:33 +00:00
John Dennis Casey 4ccb9068fb Resolving: MNG-717
o Dependencies don't have a default scope value, to allow DependencyManagement to set the scope if null...then, the metadata source sets the scope to 'compile' when it constructs the artifacts from deps that still have a null scope. Oh, and it will at that point back-propagate the 'compile' scope to these dependency instances, for later reference...



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@240428 13f79535-47bb-0310-9956-ffa450edef68
2005-08-27 15:44:48 +00:00
Brett Leslie Porter 0481c45fc9 repair snapshot build numbering (previous code makes it get stuck at 1).
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@240405 13f79535-47bb-0310-9956-ffa450edef68
2005-08-27 11:42:30 +00:00
Brett Leslie Porter ffb317c27d PR: MNG-790
trace was too verbose for a warning

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@240374 13f79535-47bb-0310-9956-ffa450edef68
2005-08-27 02:04:14 +00:00
Brett Leslie Porter cddc9df70e PR: MNG-753
add a missing need for the super repository

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@240218 13f79535-47bb-0310-9956-ffa450edef68
2005-08-26 12:23:20 +00:00
Brett Leslie Porter d466205274 PR: MNG-753
correct ordering of repositories in POM (also fixed problem of not correctly overriding "central" - properly this time!)
took note of a simpler way to ensure this is correct in future

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@240204 13f79535-47bb-0310-9956-ffa450edef68
2005-08-26 11:24:11 +00:00
Brett Leslie Porter c945c27bff PR: MNG-693
added tests for reporting inheritence to mirror plugin inheritence, cleanup and utilise executions element

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@240197 13f79535-47bb-0310-9956-ffa450edef68
2005-08-26 09:29:05 +00:00
Brett Leslie Porter fcd86eff85 update inline with surefire plugin - *TestCase are included, Abstract*TestCase are not
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@240178 13f79535-47bb-0310-9956-ffa450edef68
2005-08-26 07:31:18 +00:00
Brett Leslie Porter 1b81c99d57 PR: MNG-789
interpolate ${basedir} in the model


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@240177 13f79535-47bb-0310-9956-ffa450edef68
2005-08-26 07:30:21 +00:00
Brett Leslie Porter 294199b388 PR: MNG-761
fallback to deployment repository for snapshots when there is no snapshot repository


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@240175 13f79535-47bb-0310-9956-ffa450edef68
2005-08-26 07:26:03 +00:00
John Dennis Casey da3aa1090f Resolving: MNG-666
If a v3 POM is encountered (or any POM where modelVersion is != '4.0.0'), an InvalidModelException is thrown.
This exception extends ProjectBuildingException, to enable piggybacking on the same catch() clause.
When the MavenMetadataSource catches InvalidModelException, it returns a ResolutionGroup with the pomArtifact and empty collections for the pom dependency artifacts and the repository list with which to resolve the empty artifacts set.

Also, added it0059 to test builds where a dependency POM is a v3 pom (missing <modelVersion/>).


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@239981 13f79535-47bb-0310-9956-ffa450edef68
2005-08-25 03:08:10 +00:00
John Dennis Casey f437fb5dc2 Resolving: MNG-773
o Separated profile injection logic from the inheritance assembly. While they look similar superficially, the
  merge-out vs. merge-in semantics make it pretty complex to put this logic together in the same methods. It's
  easier to understand what's going on if they remain similar but separate code...

o Added it0058 to test that application of a profile from settings.xml doesn't transport module lists from POM
  to POM inside of a reactor build.



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@239918 13f79535-47bb-0310-9956-ffa450edef68
2005-08-24 20:31:29 +00:00
John Dennis Casey 252b151052 Resolving: MNG-766.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@239464 13f79535-47bb-0310-9956-ffa450edef68
2005-08-23 22:11:07 +00:00
John Dennis Casey 5d0298a942 Resolving: MNG-757 according to the comments in the issue.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@239243 13f79535-47bb-0310-9956-ffa450edef68
2005-08-22 20:31:24 +00:00
John Dennis Casey 146e022327 Resolving: MNG-251
o Added transformation manager
o snapshot timestamp/buildnumber is now managed from the transformation rather than the metadata
o maven-archiver now clones the MavenProject and resolves snapshot versions for introduction into manifest and exported pom.



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@239219 13f79535-47bb-0310-9956-ffa450edef68
2005-08-22 19:00:51 +00:00
Brett Leslie Porter 932caa362a PR: MNG-729
fix artifact handler instantiation when the plugin extension is declared in a project that uses that packaging itself

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@233480 13f79535-47bb-0310-9956-ffa450edef68
2005-08-19 13:15:07 +00:00
John Dennis Casey 659a1f4736 Fixing some things:
o Artifact attachment via MavenProjectHelper was using string literals of the variables I was trying to use to fill in type and classifier (dumb, I know!)

o Source plugin didn't have an @phase for the JarSourceMojo...added, then added the goal configuration in the release profile in the super-pom

o Removed the source plugin bindings for the lifecycle mappings in maven-core

o Re-added [deprecated] method MavenProjectBuilder.build( File, ArtifactRepository, List )...you should use MavenProjectBuilder.build( File, ArtifactRepository, ProfileManager ) instead.

o Added profile handling/injection for the super-pom in two places: in buildStandaloneSuperPom() and in private build(..). This enables injection of the release profile which is provided in the super-pom.

o Added integration test to verify that using -DperformRelease=true results in the sources being attached...to override this behavior, another profile keyed on -DperformRelease could turn the 'attach' param for the source plugin off.



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@233245 13f79535-47bb-0310-9956-ffa450edef68
2005-08-17 19:23:45 +00:00
John Dennis Casey 9a3085813d Working on MNG-483
o Added @requiresDirectInvocation (was: @cliOnly, but this implies m2 is run from CLI...counter-intuitive for embedding)

o Added handling for new @requiresDirectInvocation (generation/parsing, MojoDescriptor support, etc.)

o Added check in DefaultLifecycleExecutor to throw a LifecycleExecutionException if a mojo specified in a lifecycle binding is marked as direct-invocation only.

o Added MavenProjectHelper/DefaultMavenProjectHelper to provide convenience methods for manipulating MavenProject instances (for example, attaching artifacts or adding resources)

o Removed maven-artifact dependency from maven-source-plugin, and added dependency on maven-plugin-api (should've been there)



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@233021 13f79535-47bb-0310-9956-ffa450edef68
2005-08-16 18:03:20 +00:00
John Dennis Casey fe5a91b0d6 Working on: MNG-483
Fixing profile application to separate profiles discovered in and around POM from those in settings.xml, and apply them separately in the order: 

for-each-project-in-inheritance:{POM, profiles.xml}, settings.xml

Added common interface for accumulating, explicitly activating and deactivating, and retrieving profiles to be applied to a given project. This manager interface (ProfileManager) is general enough to be applicable to both the project-level and settings-level profiles.

Added 'performRelease'-keyed profile to super-POM which will be used by the release plugin and anyone using a parallel process, and which will enable '-DupdateReleaseInfo=true' for the deploy mojo, along with enabling the source attachment for the project.

Added 'attach' parameter to JarSourceMojo to allow local POM to turn off source attachments, overriding release profile in super-pom.

Updated the release:perform mojo to use '-DperformRelease=true' for switching on the new release profile, rather than just using '-DupdateReleaseInfo=true'...



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@233013 13f79535-47bb-0310-9956-ffa450edef68
2005-08-16 16:31:02 +00:00
John Dennis Casey 88d49cb04f o Improving toString for Dependency in the 4.0.0 version codeSegment in maven.mdo
o Improving error messages for ResourceDoesNotExistException in the transformations
o Adding specificity to the dependency validation stuff, to output which dependency is offending...
o Added it1013 to show off the new dependency validation stuff.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@232399 13f79535-47bb-0310-9956-ffa450edef68
2005-08-12 21:55:00 +00:00
John Dennis Casey 155c0a69a7 Resolving: MNG-686...Moving <directory/> specification from Build to BuildBase to allow profiles inline within the POM to change this setting.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@232336 13f79535-47bb-0310-9956-ffa450edef68
2005-08-12 17:06:38 +00:00
John Dennis Casey 86321f4163 Adding comment to discourage re-adding the status inheritance.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@232178 13f79535-47bb-0310-9956-ffa450edef68
2005-08-12 01:43:36 +00:00
John Dennis Casey 0db68a8c2e Removing inheritance of status in distributionManagement.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@231555 13f79535-47bb-0310-9956-ffa450edef68
2005-08-12 01:36:55 +00:00
John Dennis Casey 3408c163dc o Removed it0048, and replaced it with a unit test for the DefaultProfileInjector.
o Reverted the logic of the DefaultProfileInjector to merge-and-override the model, with the profile being dominant
o Added merging for distributionManagement and modules (conditionally, based on flag) in the modelBase merge
o Refactored the override logic into a couple of methods in ModelUtils to make it easier to understand what's going on here.
o Verified that both the build and the model itself are being merged correctly during profile injection, with profile dominance, but persistence of changes to the model.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@231481 13f79535-47bb-0310-9956-ffa450edef68
2005-08-11 16:46:19 +00:00
Kenney Westerhof c897fa04c1 After r231121 the <modules/> in poms were ignored. I tracked the changes,
and it was obvious: merge code didn't merge the Modules section, and possibly
other sections aswell. Also putting all normal model build info in a profile and
then copying profile data back to the model seemed odd to me. Now only
data from profiles that actually get merged is merged.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@231470 13f79535-47bb-0310-9956-ffa450edef68
2005-08-11 14:35:20 +00:00
John Dennis Casey 013d4039fb Resolving: MNG-684
o Split profile injection out into its own component away from the defaults assembler
o Moved code common to the defaults assembler and the profile injector into ModelUtils
o Removed the profile-related method from ModelIntheritanceAssembler
o added it0048 to test that profile values will override POM values.



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@231294 13f79535-47bb-0310-9956-ffa450edef68
2005-08-10 19:21:34 +00:00
John Dennis Casey acf7e6f1f8 Correcting problem with originalModel being reset inside processProjectLogic(..) in DefaultMavenProjectBuilder
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@231121 13f79535-47bb-0310-9956-ffa450edef68
2005-08-09 21:44:54 +00:00
John Dennis Casey 9b92bf860e Adding better handling for originalModel in MavenProject.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@231112 13f79535-47bb-0310-9956-ffa450edef68
2005-08-09 20:56:12 +00:00
John Dennis Casey 09ebb0f615 Resolving: MNG-163
Use MavenProject.addResource(..) and .addTestResource(..) to perform this function. I've built a BuildOverlay to insulate the interpolated, initialized Model's Build instance from runtime changes to these, in a similar fashion to addCompileSourceRoots(..), because I wanted to preserve some compat with plugins using ${project.build.resources}.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@230920 13f79535-47bb-0310-9956-ffa450edef68
2005-08-08 23:06:48 +00:00
Kenney Westerhof 2823fe4711 Solving MNG-711:
o Added a check in MavenProject.getArtifacts() to never return null,
  but an empty Set, since there's almost no checking.

o Added requiresDependencyResolution test to SurefirePlugin.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@230827 13f79535-47bb-0310-9956-ffa450edef68
2005-08-08 17:55:21 +00:00
Brett Leslie Porter b072910ab3 make sure plugin repositories don't get used to resolve parents and dependencies
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@227164 13f79535-47bb-0310-9956-ffa450edef68
2005-08-03 05:11:16 +00:00
John Dennis Casey 094a5a4312 Working on: MNG-662
o Moved extension-artifact creation and caching to MavenProject, initialized by MavenProjectBuilder, just like plugin-artifacts is.

o Added extension-artifact and report-artifact creation (and initialization in MavenProject) to MavenProjectBuilder, for consistency with plugin-artifacts

o Removed dependency on ArtifactFactory in DefaultExtensionManager (extension artifacts are reachable from MavenProject now)

This makes the process of resolving all artifacts referenced by a project much simpler and more consistent (namely, for the release plugin)


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@227147 13f79535-47bb-0310-9956-ffa450edef68
2005-08-03 02:30:21 +00:00
Brett Leslie Porter 2b4a78632c not ready for this yet
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@227109 13f79535-47bb-0310-9956-ffa450edef68
2005-08-02 23:16:03 +00:00
Kenney Westerhof d396f24642 o Put all m2 core dependencies (plexus-container-default and plexus-utils)
under dependencyManagement of m2 and maven-plugins, and removed
  versions in all poms having either as a parent.
  Used version 1.0.2-SNAPSHOT for plexus-utils as that was used in maven-core
  and is not overridable.

o Bumped maven-archiver version to 2.0-beta-1-SNAPSHOT for maven-ear-plugin


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@227084 13f79535-47bb-0310-9956-ffa450edef68
2005-08-02 21:34:54 +00:00
Kenney Westerhof 869525558b Fixed MNG-687:
MavenProject( MavenProject ) constructor creates an unmodifyable
	attachedArtifacts, making it impossible for plugins to attach artifacts.

	This constructor is only referenced from DefaultLifeCycleExecutor
	in forkLifeCycle, so it's a safe change.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@226989 13f79535-47bb-0310-9956-ffa450edef68
2005-08-02 12:27:20 +00:00
Brett Leslie Porter ec22f0087f missed inheritence
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@226819 13f79535-47bb-0310-9956-ffa450edef68
2005-08-01 15:22:47 +00:00
Brett Leslie Porter d978e51dc6 write out the generated POM to avoid a waster URL connection next time
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@226541 13f79535-47bb-0310-9956-ffa450edef68
2005-07-30 16:10:01 +00:00
Brett Leslie Porter 44abb5383a don't need to check for updates on snapshot poms - that happens anyway
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@226464 13f79535-47bb-0310-9956-ffa450edef68
2005-07-30 02:18:01 +00:00
John Dennis Casey dad9ebc577 o Fixing DoxiaMojo (there was an API incompatibility there, having to do with FileUtils...not sure if there is something that didn't get deployed, or what)
o Adding cli-options.txt for three ITs that failed when I cleaned out the local repo

o Fixing the setFile(..) method of ActiveProjectArtifact (hopefully) for Emmanuel's continuum build problem...




git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@226426 13f79535-47bb-0310-9956-ffa450edef68
2005-07-29 23:26:42 +00:00
John Dennis Casey a6891c4e25 Adding resolved flag to Artifact.
This is done to counter the possibility that an artifact's file is set without the artifact actually being resolved, as in the case where the artifact is a snapshot version, but no snapshot-enabled repositories exist (think plugin resolution). This also has the beneficial side-effect of providing a more intuitive method of checking whether an artifact has been resolved (rather than artifact.getFile() != null).


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@226333 13f79535-47bb-0310-9956-ffa450edef68
2005-07-29 03:41:02 +00:00
Brett Leslie Porter 15fef60915 helps to pass on parameters
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@225784 13f79535-47bb-0310-9956-ffa450edef68
2005-07-28 14:38:18 +00:00
Brett Leslie Porter 78770ba39f ensure it gets checked
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@225782 13f79535-47bb-0310-9956-ffa450edef68
2005-07-28 14:26:41 +00:00
Brett Leslie Porter 5d82fcb8a6 PR: MNG-249
also recognise transitive projects



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@225780 13f79535-47bb-0310-9956-ffa450edef68
2005-07-28 14:19:03 +00:00
Brett Leslie Porter 9a86709abd PR: MNG-249
make compile and package reactor aware



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@225731 13f79535-47bb-0310-9956-ffa450edef68
2005-07-28 09:32:32 +00:00
Brett Leslie Porter 85b30cf43d PR: MNG-326
take plugins, reports and extensions into account when sorting modules for reactor build

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@225717 13f79535-47bb-0310-9956-ffa450edef68
2005-07-28 06:52:04 +00:00
Brett Leslie Porter 7a90482fda ibiblio only has releases
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@225715 13f79535-47bb-0310-9956-ffa450edef68
2005-07-28 06:38:25 +00:00