Commit Graph

112 Commits

Author SHA1 Message Date
Brett Leslie Porter 9d6fad725a change @requiresDependencyResolution to take a scope (default is "runtime" if no scope specified, none if tag not specified at all).
This still means ALL tests get the test dependencies of their compile time dependencies. Check if there is really a valid use case for that.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163780 13f79535-47bb-0310-9956-ffa450edef68
2005-04-05 08:17:28 +00:00
Brett Leslie Porter ddeee6f1d4 fix bug - if timestamp is null, then the local metadata is NOT considered newer
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163779 13f79535-47bb-0310-9956-ffa450edef68
2005-04-05 07:01:06 +00:00
Brett Leslie Porter 935cda15da clean up dependencies.
Still need to clean up ~/maven2/lib and some large dependencies from marmalade that
shouldn't be needed in general - but down to about a 3Mb repository.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163775 13f79535-47bb-0310-9956-ffa450edef68
2005-04-05 04:11:03 +00:00
Brett Leslie Porter a90fdae557 use a local snapshot if its file timestamp is newer than the remote timestamp inside the version file. This opens us back up to clock skew again, but should be preferential to local snapshots and less confusing
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163773 13f79535-47bb-0310-9956-ffa450edef68
2005-04-05 01:58:33 +00:00
Brett Leslie Porter ba288cee61 use a regex to parse for more consistency
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163768 13f79535-47bb-0310-9956-ffa450edef68
2005-04-04 16:02:48 +00:00
Brett Leslie Porter 2e3e41fddf transitive deps in mboot. Will now proceed to trim up the POMs. Still need to trim ~/maven2/lib also.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163764 13f79535-47bb-0310-9956-ffa450edef68
2005-04-04 14:35:06 +00:00
Brett Leslie Porter 49593155d0 update poms for releases
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163741 13f79535-47bb-0310-9956-ffa450edef68
2005-04-01 16:03:43 +00:00
Brett Leslie Porter dd05b8a93e remove unneeded code
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163738 13f79535-47bb-0310-9956-ffa450edef68
2005-04-01 04:09:37 +00:00
John Dennis Casey 5b5a124caa o Updated the repo layout classes to use direct string concatenation rather than StringUtils.replace() which is not useful because the layout is non-varying.
o Repoclean still not working with the new artifact/artifactmetadata stuff...the above modifications to the repo layout classes was primarily meant to improve performance when using repoclean.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163736 13f79535-47bb-0310-9956-ffa450edef68
2005-04-01 02:45:05 +00:00
John Dennis Casey 2eed725153 o Reworked the artifact parsing code for the legacy artifact discoverer.
o Getting OutOfMemoryError when running against ibiblio-v1.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163732 13f79535-47bb-0310-9956-ffa450edef68
2005-04-01 00:24:45 +00:00
Brett Leslie Porter a185b72aeb handle invalid format file
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163730 13f79535-47bb-0310-9956-ffa450edef68
2005-03-31 11:31:12 +00:00
Brett Leslie Porter eeef193577 save a version of the file if it did not exist - this prevents an older snapshot blowing an installed one away on a clean repo
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163723 13f79535-47bb-0310-9956-ffa450edef68
2005-03-31 07:04:10 +00:00
Brett Leslie Porter 6f8b171aaf correct resolution bug when a new snapshot is downloaded
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163720 13f79535-47bb-0310-9956-ffa450edef68
2005-03-30 14:56:32 +00:00
Brett Leslie Porter d47767f88d make sure local repository directory exists
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163714 13f79535-47bb-0310-9956-ffa450edef68
2005-03-30 05:34:50 +00:00
Brett Leslie Porter e622d5e323 honour an installed SNAPSHOT in favour of the remote version, until a newer remote version is deployed
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163713 13f79535-47bb-0310-9956-ffa450edef68
2005-03-30 05:24:50 +00:00
Brett Leslie Porter 8fc9b6db13 make the offline switch set a global snapshot policy of "never" for now
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163712 13f79535-47bb-0310-9956-ffa450edef68
2005-03-30 04:52:01 +00:00
Brett Leslie Porter eabafcc093 implement snapshot policies: default is to only check once a day (after crossing midnight), or if --update-snapshots (-U) is specified on the command line
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163711 13f79535-47bb-0310-9956-ffa450edef68
2005-03-30 03:30:08 +00:00
Brett Leslie Porter b03435f9e1 improve reporting
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163710 13f79535-47bb-0310-9956-ffa450edef68
2005-03-30 01:17:34 +00:00
Brett Leslie Porter d3781103e8 change resolve() methods to not return Artifact - but instead modify the original. Artifact is immutable except for version so it is safe - but will it cost flexibility later. Currently, this makes it much simpler as less copying vigilance is required.
This has ironed out most wrinkles. Still need to implement the snapshot checking cache, and special case the use of installed snapshots over deployed ones.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163706 13f79535-47bb-0310-9956-ffa450edef68
2005-03-29 16:41:13 +00:00
Brett Leslie Porter 16ea34c8c1 snapshot resolution working, with glitches. committing working copy that is only enabled by a sys property until other features are in place.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163705 13f79535-47bb-0310-9956-ffa450edef68
2005-03-29 15:44:28 +00:00
Brett Leslie Porter ff261cd131 more bug fixes for artifact cloning
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163694 13f79535-47bb-0310-9956-ffa450edef68
2005-03-24 16:08:48 +00:00
Brett Leslie Porter b529deb2df bug fixes, but still not completely fixed
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163693 13f79535-47bb-0310-9956-ffa450edef68
2005-03-24 16:03:51 +00:00
Brett Leslie Porter 004c6cbdf3 snapshot resolution. commented out due to issues surrounding pom/artifact pairing
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163692 13f79535-47bb-0310-9956-ffa450edef68
2005-03-24 14:52:25 +00:00
Brett Leslie Porter a3d1a624be remove testing setting
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163690 13f79535-47bb-0310-9956-ffa450edef68
2005-03-24 12:23:35 +00:00
Brett Leslie Porter 5db2c4cf56 rewrite POM with new version on deployment
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163689 13f79535-47bb-0310-9956-ffa450edef68
2005-03-24 12:22:05 +00:00
Brett Leslie Porter b9de151229 fix deploy/install os standalone POMs
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163688 13f79535-47bb-0310-9956-ffa450edef68
2005-03-24 11:57:47 +00:00
Brett Leslie Porter e697f5bd8c deploy/install POMs as a type of metadata so they are done atomically
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163687 13f79535-47bb-0310-9956-ffa450edef68
2005-03-24 10:30:58 +00:00
Brett Leslie Porter b5e30a6ed5 allow file:// deployment
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163685 13f79535-47bb-0310-9956-ffa450edef68
2005-03-24 08:46:02 +00:00
Brett Leslie Porter 3f0f786e67 transform deployment of SNAPSHOT.
Currently, the POM and artifact are deployed separately, causing an inconsistent version to be written out.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163684 13f79535-47bb-0310-9956-ffa450edef68
2005-03-24 08:45:37 +00:00
Brett Leslie Porter 4ba9fbcc33 correct placement of transformations
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163682 13f79535-47bb-0310-9956-ffa450edef68
2005-03-24 05:18:41 +00:00
Brett Leslie Porter ee15019eb8 refactor maven-artifact: first pass, reduce the usage of setPath()
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163681 13f79535-47bb-0310-9956-ffa450edef68
2005-03-24 05:01:06 +00:00
Brett Leslie Porter b7290449e2 add notes on current limitations
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163678 13f79535-47bb-0310-9956-ffa450edef68
2005-03-23 15:10:38 +00:00
Brett Leslie Porter 701911f219 scaffolding for remote transformation
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163677 13f79535-47bb-0310-9956-ffa450edef68
2005-03-23 15:03:39 +00:00
Brett Leslie Porter 2727721b11 add artifact metadata on installation of snapshot in a local repository
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163676 13f79535-47bb-0310-9956-ffa450edef68
2005-03-23 14:55:15 +00:00
Brett Leslie Porter 5e2caf89c7 o put all of the path functions back into the artifact handler manager - that class likely needs a rename.
o Removed AbstractArtifactComponent as it was simply delegating to the class and prevented other inheritence for the resolver which seems more appropriate.
o fixed test failure in ProjectClasspathTest due to incorrectly constructed component - using plexus even though still working around the problem with a hack


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163675 13f79535-47bb-0310-9956-ffa450edef68
2005-03-23 08:42:57 +00:00
Brett Leslie Porter 7c82aceb35 make method signatures consistent
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163674 13f79535-47bb-0310-9956-ffa450edef68
2005-03-23 07:43:38 +00:00
Brett Leslie Porter 2b85350558 o a little refactoring
o hook in snapshot transformation, though it isn't used


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163673 13f79535-47bb-0310-9956-ffa450edef68
2005-03-23 07:41:39 +00:00
Brett Leslie Porter 14acea5e3f move artifact transformations out of the resolver so they can be used on any artifact component
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163672 13f79535-47bb-0310-9956-ffa450edef68
2005-03-23 07:23:23 +00:00
Brett Leslie Porter 14bb2c805a change the maven group ID
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163670 13f79535-47bb-0310-9956-ffa450edef68
2005-03-23 06:52:55 +00:00
John Dennis Casey 80880d071e o Fixed a configuration issue for the DefaultRepositoryLayout in components.xml...it needed a requirement on the ArtifactHandlerManager.
o Fixed a formatting issue for the layout in DefaultRepositoryLayout relating to groupId's.
o Revamped the repoclean tool to use an Artifact-centric approach to converting, cleaning, and reporting on repositories.
o Added the ability for repoclean to report on the health of an existing v3 or v4 repository, using a DefaultArtifactDiscoverer (Default* being the prefix given to the new repo layout going forward) and a V4PomRewriter implementation.
o Tested repoclean by converting my local m1 repository to a m2 repository.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163669 13f79535-47bb-0310-9956-ffa450edef68
2005-03-23 04:53:30 +00:00
Brett Leslie Porter 5b29c8a7dd update licenses and reformat
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163668 13f79535-47bb-0310-9956-ffa450edef68
2005-03-23 03:40:13 +00:00
Brett Leslie Porter 297f542553 remove extension from artifact - it is the sole reponsibility of the artifact handler. This prevents the error of plugins getting the extension "maven-plugin"
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163647 13f79535-47bb-0310-9956-ffa450edef68
2005-03-22 07:23:17 +00:00
Brett Leslie Porter f07d86f311 clean up artifact handler a little - fields are all final
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163645 13f79535-47bb-0310-9956-ffa450edef68
2005-03-22 06:51:16 +00:00
John Dennis Casey 52d4ebc8fe o Added artifact resolver test that uses the new repository layout.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163641 13f79535-47bb-0310-9956-ffa450edef68
2005-03-22 03:51:56 +00:00
John Dennis Casey eec84bb41e o Correcting violation to the conflictId: this shouldn't include $classifier, according to the documentation on the repository layout.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163639 13f79535-47bb-0310-9956-ffa450edef68
2005-03-21 08:45:44 +00:00
John Dennis Casey 590e952f02 CHANGES
------------------------

o Factored the layout for a repository into a separate set of components in o.a.m.a.repository.layout

o Added new DefaultRepositoryLayout that uses the repo layout in http://docs.codehaus.org/pages/viewpage.action?pageId=22230 (it is not used by default until we get the repo1 conversion done)

o Added command-line switches to force legacy local-repo or new format (-a/-A, I know, but try to find something that makes more sense!)

o Added path formatting to the repository itself, which is now constructed with a ArtifactRepositoryLayout instance (since layout should be tied to the repository)

o Removed path formatting altogether from the DefaultArtifactHandlerManager.

o Changed the AbstractArtifactBasedComponent (or whatever it's called) to use the repository formatting in the path() and localPath() methods.

o Moved the plugin repo construction (still intact as a hard-coded singleton list) into the DefaultMavenProjectBuilder, where it will eventually build from POM info.

o Added a new method to build an artifact repository for a <distributionManagement/> section, if possible. This reduced the strain on mojos to construct an ArtifactRepository on demand.

o Refactored all *DeployMojo to use #project.distributionManagementArtifactRepository instead of the #settings, #component..ArtifactRepositoryFactory, ... that it used to require. This is a big simplifying step.

o Removed remote artifact repository construction from DefaultMaven, and changed the MavenSession to delegate to MavenProject for remoteArtifactRepositories, just as it does for pluginRepositories.

o Added remoteArtifactRepositories, pluginArtifactRepositories, distributionManagementArtifactRepository to MavenProject as a cache for the higher-level repos used throughout the system. This is project info, so it belongs here.

o Fixed all the tests in maven-core and maven-artifact which I broke. :)

o Dropped what is probably a big format-bomb, since the Eclipse formatter doesn't really handle 'throws Exception' wrapping the right way.

o Added MavenProject to the MavenSession constructor, since there should always be a MavenProject associated with a build, even if it's just the super-pom.

TODO:
--------------------------

- Write an integration/unit test to ensure that the new repo format works with $classifier (was: $extra) and $groupId[0]/../$groupId[n]. This is a simple adaptation of the old layout, but still needs testing.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163638 13f79535-47bb-0310-9956-ffa450edef68
2005-03-21 08:18:34 +00:00
John Dennis Casey 10b55add40 o Created non-abstract base class for DefaultArtifactFactory to extend, called ArtifactConstructionSupport, which provides centralized means for constructing artifacts consistently without all the maven-core specific methods. These maven-core specifics not delegate to the generic methods provided in this new class.
o Adjusted the maven-archetype stuff to work with the new artifact creation/resolution/etc. methods in maven-artifact and maven-core.
o Removed all direct construction of DefaultArtifact and replaced with ArtifactConstructionSupport where it would have involved putting the DefaultArtifactFactory in the plexus.xml, and where the code doesn't need dependency-oriented methods.
o Archetype works now, using the example provided in plexus/plexus-site/src/site/apt/building-plexus-applications.apt


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163615 13f79535-47bb-0310-9956-ffa450edef68
2005-03-18 22:02:09 +00:00
Brett Leslie Porter 2628261b75 PR: MNG-207
fix scope issue in a conflict


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163587 13f79535-47bb-0310-9956-ffa450edef68
2005-03-17 00:17:26 +00:00
Brett Leslie Porter 38add00ed4 cleanup
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163570 13f79535-47bb-0310-9956-ffa450edef68
2005-03-16 01:43:09 +00:00
Brett Leslie Porter 5c1f5b1e57 PR: MNG-52
change type of maven plugins to "maven-plugin" instead of plugin.
This should allow other products to have different plugin types, if necessary.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163562 13f79535-47bb-0310-9956-ffa450edef68
2005-03-15 22:31:54 +00:00