Commit Graph

43 Commits

Author SHA1 Message Date
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 86c55a3bd1 PR: MNG-670
tone it down a bit

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@225803 13f79535-47bb-0310-9956-ffa450edef68
2005-07-28 15:45:11 +00:00
Brett Leslie Porter 3c461ef89d PR: MNG-670
stronger warning if scope gets updated over the root POM

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@225788 13f79535-47bb-0310-9956-ffa450edef68
2005-07-28 14:54:04 +00:00
Brett Leslie Porter e26eecde45 fine tune logging
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@225778 13f79535-47bb-0310-9956-ffa450edef68
2005-07-28 14:13:31 +00:00
Brett Leslie Porter 07facba258 fine tune logging
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@225777 13f79535-47bb-0310-9956-ffa450edef68
2005-07-28 14:03:37 +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 231c6a7a1d PR: MNG-615
implement repository confidence levels. currently updates poms daily if they are not deployed or verified

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@225714 13f79535-47bb-0310-9956-ffa450edef68
2005-07-28 06:35:47 +00:00
Brett Leslie Porter d389dffc68 revert previous change - if that problem is encountered an alternative solution will need to be found
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@225663 13f79535-47bb-0310-9956-ffa450edef68
2005-07-28 01:00:39 +00:00
Brett Leslie Porter c757e62b3a PR: MNG-633
avoid leaking checksum temporary files

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@225540 13f79535-47bb-0310-9956-ffa450edef68
2005-07-27 16:05:45 +00:00
Brett Leslie Porter 826413b74a PR: MNG-598
allow type handlers to be specified by plugin extensions



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@225477 13f79535-47bb-0310-9956-ffa450edef68
2005-07-27 08:03:33 +00:00
John Dennis Casey 73e549b231 o Fixing resolution of LATEST in plugin-versions, when <useLatest/> is enabled in plugin-registry.xml, or when --check-plugin-latest is specified on the command line.
o Fixing core-library resolution for expression: ${plugin.artifacts} and ${plugin.artifactMap} (latter is keyed by g:a)

o Modified maven-core-it-plugin to accept something like "-DartifactToFile=org.apache.maven:maven-artifact"...it'll lookup that artifact in ${plugin.artifactMap}, and touch a file that's a mutation of the abs. path for that artifact.

o Added pomArtifact to ResolutionGroup, since the MavenMetadataSource ALWAYS creates a new Artifact for a pom...this allows us to retrieve the resolved Artifact for that pom.



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@225234 13f79535-47bb-0310-9956-ffa450edef68
2005-07-26 05:54:24 +00:00
Brett Leslie Porter 086463b5b4 PR: MNG-456
allow separate snapshot and release repositories
deprecate existing snapshotPolicy and checksumPolicy in favour of updatePolicy and checksumPolicy within the <releases> and <snapshots> elements in the <repository> element.



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@224707 13f79535-47bb-0310-9956-ffa450edef68
2005-07-25 09:51:12 +00:00
Brett Leslie Porter eab42822ef various straightening up
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@220244 13f79535-47bb-0310-9956-ffa450edef68
2005-07-22 05:58:50 +00:00
Brett Leslie Porter 511af3d3e2 PR: MNG-596
add XSD definition to m2 poms and archetypes



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@220079 13f79535-47bb-0310-9956-ffa450edef68
2005-07-21 13:58:42 +00:00
Brett Leslie Porter 884a29b92d fix problem on first run when no RELEASE data
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@220066 13f79535-47bb-0310-9956-ffa450edef68
2005-07-21 13:39:32 +00:00
Brett Leslie Porter 399e51761a don't continually try to resolve from a remote repository when it doesn't exist there
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@219854 13f79535-47bb-0310-9956-ffa450edef68
2005-07-20 08:10:42 +00:00
Brett Leslie Porter 1e8e1d21ff correct behaviour
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@219832 13f79535-47bb-0310-9956-ffa450edef68
2005-07-20 02:18:19 +00:00
Brett Leslie Porter f48d2c367c avoid potential NPE
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@219831 13f79535-47bb-0310-9956-ffa450edef68
2005-07-20 02:08:53 +00:00
Brett Leslie Porter e40e709513 add copyright
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@219830 13f79535-47bb-0310-9956-ffa450edef68
2005-07-20 02:00:13 +00:00
Brett Leslie Porter 19696518b3 add copyrights
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@219819 13f79535-47bb-0310-9956-ffa450edef68
2005-07-20 00:00:08 +00:00
John Dennis Casey 18fa2476bc Forgot this one
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@219817 13f79535-47bb-0310-9956-ffa450edef68
2005-07-19 23:53:21 +00:00
John Dennis Casey 11082da5f4 Fixing bootstrap.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@219807 13f79535-47bb-0310-9956-ffa450edef68
2005-07-19 23:27:24 +00:00
John Dennis Casey 76d971b4ba Removing leftover lifecycle binding for ValidatePomMojo in the maven-plugin-plugin (removed that last night).
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@219716 13f79535-47bb-0310-9956-ffa450edef68
2005-07-19 17:15:41 +00:00
Brett Leslie Porter 810d4a3276 PR: MNG-505
artifact refactoring to facilitate version ranges



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@219616 13f79535-47bb-0310-9956-ffa450edef68
2005-07-19 05:04:39 +00:00
John Dennis Casey 6f81043b7b Centralized repository handling in AbstractVersionTransformation, for consistency (should fix MNG-527).
Changed download strategy for plugins.xml metadata to download only when non-existent locally or when plugin prefix cannot be located within local metadata. NOTE: This could lead to local-only installs of plugins having their prefix mappings overwritten.

Next step is to change the maven-plugin-plugin.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@219615 13f79535-47bb-0310-9956-ffa450edef68
2005-07-19 04:15:26 +00:00
John Dennis Casey c7d5e83520 Resolving: MNG-397
o Added ResolutionGroup class which contains a set of artifacts and a list of repositories to resolve them.
o Made the ResolutionNode a standalone class, and added the remote repositories to it
o Changed ArtifactMetadataSource.retrieve(..) to return ResolutionGroup rather than Set, in order to help keep track of the repositories which should be used to resolve the retrieved artifacts.

We need some tests for this...


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@219276 13f79535-47bb-0310-9956-ffa450edef68
2005-07-16 01:24:13 +00:00
John Dennis Casey 0cc696a407 Working on: MNG-576
o Implemented plan from my comments on MNG-576 for looking up lifecycle mappings within plugins.

o Fixed subtle bug in DefaultWagonManager for verifying checksums, where the destination file was being used to verify the checksum rather than the recently download temp destination.

o Fixed the DefaultRepositoryMetadataManager.resolve(..) method to allow the locally-installed metadata to be used if it is newer than the one resolved from the repository.

o Moved the lifecycle mappings for the EJB and WAR plugins out to META-INF/plexus/components.xml in the respective plugin's src/main/resources directory. it0016 and it0017 still pass.

o Changed the distributionManagement repository for maven-plugins/pom.xml to have id of 'central-plugins' and then added a normal artifact repository definition for central-plugins to that pom, to allow locally-installed repository metadata for the plugins to be put in the right place (and these builds should have access to the central plugin repo anyway).

o Changed the DefaultPluginMappingBuilder to only warn when plugins.xml for a particular plugin group is missing.



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@216273 13f79535-47bb-0310-9956-ffa450edef68
2005-07-13 21:57:57 +00:00
John Dennis Casey 20047d63c9 Fixing problem with using distributionManagement repository definition for download of plugins.xml metadata.
Now, in order to build a maven plugin, you need two things:

1. a repository defined in distributionManagment
2. a repository defined in <repositories/> which has the same id as the one in distributionManagement.

This is necessary, since in most cases SSH will be used in the distributionManagement definition for uploading the plugin...which means that the download of the existing plugins.xml file might not be available for users trying to run an install. SSH requires authentication information, and users (particularly those running the bootstrap) might not have this auth info.



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@216013 13f79535-47bb-0310-9956-ffa450edef68
2005-07-12 20:08:21 +00:00
John Dennis Casey cb257db78e Resolving:
MNG-511
MNG-513

Working on:

MNG-449

o Added code to stop the version manager from prompting the user for unregistered plugins; it will simply register them with the resolved version.

o Added failover fourth plugin-version resolution option, which is a plugin-specific artifact metadata called LATEST.version.txt, and will be published with each install/deployment

o Added MavenProject.get/setArtifact(..) to handle a single artifact instance for a project (allows injection of artifact metadata without having to handle it all within the install/deploy mojos).

o Changed plugin-version resolution to only use MavenMetadataSource rather than resolving the whole plugin artifact.

o Changed the install and deploy mojos to only use ${project.artifact} rather than constructing their own, so they can take advantage of metadata added elsewhere in the build.

o Factored the "RELEASE".equals(..) check in the DefaultRepositoryLayout to use new metadata method storedInArtifactDirectory() instead, since RELEASE and LATEST both share this characteristic.


NOTE: I'm not going to resolve MNG-449 yet, because I'm not sure what else Brett had in mind related to the plugin-development-without-release use case...



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@215919 13f79535-47bb-0310-9956-ffa450edef68
2005-07-12 04:13:40 +00:00
John Dennis Casey 4b53aba3bb Fixing issues related to MNG-377, where the plugins.xml metadata was being mishandled. Separated updating of this metadata into a separate mojo, bound to the 'package' phase, and put in a validator for the POM (POM has to have distributionRepository now for maven-plugin's) which is bound to the 'validate' phase. Put together an integration test that uses modello:java as a case where the pluginGroups must be consulted. Also had to change the Verifier to check a verifier.properties for failOnErrorOutput, which will suppress IT failures based on [ERROR] log output (modello outputs one of these, and kills the IT unnecessarily).
MNG-377 should be resolved at this point.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@215890 13f79535-47bb-0310-9956-ffa450edef68
2005-07-11 22:08:58 +00:00
John Dennis Casey 03a50c1462 [MNG-377] Resolving.
Added new mojos to the plugin-plugin that will update the plugins.xml mapping metadata in the plugin's group on the distribution repository.




git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@210153 13f79535-47bb-0310-9956-ffa450edef68
2005-07-11 16:13:33 +00:00
John Dennis Casey ca59227be1 Working on: MNG-377
o Added maven-plugin-mapping project to handle repository metadata that contains prefix-to-artifactId mappings for groups of plugins

o Added builder classes for plugin mappings

o Modified maven-artifact and maven-artifact-manager to handle the concept of repository metadata in addition to artifact metadata.

o Added pluginGroups section to settings.xml, new code to merge these lists of plugin groups, and a unit test to ensure that this merge is taking place properly.

o Added maven-plugin-mapping to dependencies of maven-core, along with the list of builds to be performed by mboot.

Should be ready to incorporate plugin mapping consultation into the lifecycle executor and the deploy mojo...



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@209550 13f79535-47bb-0310-9956-ffa450edef68
2005-07-07 00:17:37 +00:00
Emmanuel Venisse a029d766ce Update all versions to beta-1-SNAPSHOT
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@202001 13f79535-47bb-0310-9956-ffa450edef68
2005-06-27 15:29:14 +00:00
John Dennis Casey fcbc5e7d6f Resolving: MNG-495
o Pressing [ENTER] at a plugin update prompt should result in the plugin being registered, as indicated by the prompt.
o Use CLI switch '--no-plugin-updates' to suppress usage of the plugin registry
o Use CLI switch '--update-plugins' to force updated/resolved plugin versions to be registered
o Neither of these has a short CLI option, since we're starting to run out of sensible char options for these types of things.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@193082 13f79535-47bb-0310-9956-ffa450edef68
2005-06-23 06:03:10 +00:00
John Dennis Casey 6100b37321 Updating non-maven, non-modello deps to get rid of snapshots. Also removed marmalade stuff from mboot.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@193052 13f79535-47bb-0310-9956-ffa450edef68
2005-06-23 02:31:28 +00:00
Brett Leslie Porter c0e768cc1d add verbose mode for ant tasks
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@192970 13f79535-47bb-0310-9956-ffa450edef68
2005-06-22 18:29:24 +00:00
Brett Leslie Porter f2653b0cb7 - fix ant tasks
- disable cycle detection (warn instead)
- show version in dep trail

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@192966 13f79535-47bb-0310-9956-ffa450edef68
2005-06-22 18:08:21 +00:00
Brett Leslie Porter 68417deebf implement resolution listener
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@192959 13f79535-47bb-0310-9956-ffa450edef68
2005-06-22 17:33:17 +00:00
Brett Leslie Porter c3d0ba0846 use managed versions for project
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@191783 13f79535-47bb-0310-9956-ffa450edef68
2005-06-22 08:25:34 +00:00
Brett Leslie Porter 3f2f0d50a3 simplify the resolveTransitively API, and implement the new collector up to the level of functionality of the original.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@191773 13f79535-47bb-0310-9956-ffa450edef68
2005-06-22 06:46:26 +00:00
Brett Leslie Porter 3bee4a55c1 change artifact resolution result to have a set of artifacts instead of a map, as everything dealt with them as a collection anyway.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@191748 13f79535-47bb-0310-9956-ffa450edef68
2005-06-22 00:31:33 +00:00
Brett Leslie Porter 6cd2e31078 refactoring of the resolveTransitiveDependencies call.
simplified by removing a bunch of duplicated code in addArtifacts - no need to merge, you have the full list. 
separated the original artifacts (dependency artifacts) from the resolved artifacts (getArtifacts)


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@191667 13f79535-47bb-0310-9956-ffa450edef68
2005-06-21 15:32:02 +00:00
Brett Leslie Porter 26d36d8959 PR: MNG-140
split artifact impl from api so that dep resolution can be used independently of wagon
only the first step in making maven-artifact more useful as a public api - more changes to be made


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@191634 13f79535-47bb-0310-9956-ffa450edef68
2005-06-21 06:49:49 +00:00