Commit Graph

92 Commits

Author SHA1 Message Date
Brett Leslie Porter b10ed41fca reformat, apply license
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@169548 13f79535-47bb-0310-9956-ffa450edef68
2005-05-11 01:04:50 +00:00
Brett Leslie Porter d47f6c7dd6 move the Log interface to o.a.m.plugin.logging in maven-plugin-api, breaking the dependency on maven-monitor
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@169431 13f79535-47bb-0310-9956-ffa450edef68
2005-05-10 07:39:33 +00:00
John Dennis Casey 7eda955b1d o Cleaned up a couple of things in repoclean that broke with the last update.
o Added concept of ErrorDiagnoser to help interpret errors and provide user feedback
o Added PluginParameterException to provide richer information than simply PluginConfigurationException (it's derived from PluginConfigurationException)
o Added implementations of ErrorDiagnoser for artifact resolution and plugin configuration handling.
o Modified DefaultMaven's logFailure(..) method to use errorDiagnosers Map (injected via Plexus)

I approached the plugin parameter expression/name feedback in this way, as it seems like a general pattern for interpreting errors without embedding this logic deep within the app itself. Feel free to rollback if this causes issues.

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@169379 13f79535-47bb-0310-9956-ffa450edef68
2005-05-09 23:30:01 +00:00
John Dennis Casey 5345ee5fc6 Removed backward compat for plugin class-level parameter annotations and '#' expressions.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@168070 13f79535-47bb-0310-9956-ffa450edef68
2005-05-04 04:20:36 +00:00
Brett Leslie Porter 95a1895b16 add integration test phase
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@165598 13f79535-47bb-0310-9956-ffa450edef68
2005-05-02 07:22:47 +00:00
Brett Leslie Porter 8d4ca04b2d fix bad expression handling
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@165597 13f79535-47bb-0310-9956-ffa450edef68
2005-05-02 07:22:18 +00:00
John Dennis Casey 3966104e9c Removed the need for MavenMojoDescriptor (collapsed to just MojoDescriptor)...also partially setup the possibility for container-injected configurations, provided we enhance as described in getting-to-container-configured-mojos.apt.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@165378 13f79535-47bb-0310-9956-ffa450edef68
2005-04-30 03:50:47 +00:00
Brett Leslie Porter e313416d63 separate maven-project code
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@164217 13f79535-47bb-0310-9956-ffa450edef68
2005-04-22 11:01:33 +00:00
Brett Leslie Porter 9774d3d1cb decouple project stuff from maven-core
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@164205 13f79535-47bb-0310-9956-ffa450edef68
2005-04-22 09:01:47 +00:00
Brett Leslie Porter 874a8c1245 add more use of ${} expressions, fix problem when } was not at end
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@164195 13f79535-47bb-0310-9956-ffa450edef68
2005-04-22 08:33:34 +00:00
Brett Leslie Porter 7d6b029c43 some clean up of components and artifact repository factory
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@164181 13f79535-47bb-0310-9956-ffa450edef68
2005-04-22 07:16:09 +00:00
Brett Leslie Porter c98b557ac8 move artifact factory to maven-artifact
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@164178 13f79535-47bb-0310-9956-ffa450edef68
2005-04-22 06:16:25 +00:00
Brett Leslie Porter 21d261f503 clean the artifact factory interface a little
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@164172 13f79535-47bb-0310-9956-ffa450edef68
2005-04-22 05:19:04 +00:00
Brett Leslie Porter aafbd6b61c remove dependency on settings from the project builder
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@164089 13f79535-47bb-0310-9956-ffa450edef68
2005-04-21 17:17:36 +00:00
Brett Leslie Porter bc738a21f4 move utils to plexus-utils
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@164078 13f79535-47bb-0310-9956-ffa450edef68
2005-04-21 16:16:25 +00:00
Brett Leslie Porter c1cea8cbb8 factor out project sorter, and use whole ID
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163982 13f79535-47bb-0310-9956-ffa450edef68
2005-04-20 16:48:11 +00:00
Brett Leslie Porter a75e7d2577 improved error handling and other clean up
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163979 13f79535-47bb-0310-9956-ffa450edef68
2005-04-20 16:41:36 +00:00
John Dennis Casey 61406495be o Refactored the MavenSettings code into the settings.mdo/Settings class.
o Added code to cache the active proxy and profile inside the Settings instance for quicker lookup.

o Added a method to initialize a new active profile for a Settings instance in the event one didn't exist.

o Started adding offline mode. So far, I've implemented:

  - Warning when a mojo declares a requirement for connectivity, but we're offline.

  - INFO message stating when maven is running in offline mode.

  - Addition to the Profile class in o.a.m.settings package to allow specification of offline mode by declaring: <offline>true</offline>


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163969 13f79535-47bb-0310-9956-ffa450edef68
2005-04-18 21:50:55 +00:00
Brett Leslie Porter e054a2fa5a resolve outstanding issues with scoping regarding tests. Algorithm to be documented in user's guide.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163953 13f79535-47bb-0310-9956-ffa450edef68
2005-04-15 07:31:40 +00:00
Brett Leslie Porter f4bf6c145d allow the expression evaluator to align strings to a base directory, for the purposes of the file converter
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163949 13f79535-47bb-0310-9956-ffa450edef68
2005-04-15 05:29:00 +00:00
Brett Leslie Porter b2e4433615 utilise the container for populating all mojo configuration, including expressions
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163947 13f79535-47bb-0310-9956-ffa450edef68
2005-04-15 04:52:31 +00:00
Brett Leslie Porter f86ee59771 PR: MNG-297
Make sure that the base version is correctly set to -SNAPSHOT instead of a resolved timestamp when appropriate


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163916 13f79535-47bb-0310-9956-ffa450edef68
2005-04-12 23:51:21 +00:00
Brett Leslie Porter b3b831ec31 gone back to test dependencies not being transitive at all, as reversed in rev1.3 of ProjectClasspathTest. This enables the execution of "m2 test" not to pull in all and sundry test dependencies, eg from wagon. Find a valid use case before re-instating, and look into alternatives for the download issues.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163783 13f79535-47bb-0310-9956-ffa450edef68
2005-04-05 08:43:32 +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
Trygve Laugstol 16ea6ce332 o Fixing a NullPointerException in the value extractor if the specified getter
didn't exists. The value extractor will now return null if the getter doesn't
  exists.
o Properly implemented the method caching in the value exctrator.
o Changed the RegexBasedModelInterpolator so it would properly handle null
  values. It used to convert null to "null" and then insert that, now it will
  leave the expression as is.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163696 13f79535-47bb-0310-9956-ffa450edef68
2005-03-28 14:37:41 +00:00
Brett Leslie Porter 39a96456cd can't do this yet
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163695 13f79535-47bb-0310-9956-ffa450edef68
2005-03-24 16:16:49 +00:00
Brett Leslie Porter d0e15a1f37 remove unused class
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163680 13f79535-47bb-0310-9956-ffa450edef68
2005-03-24 04:44:41 +00:00
Brett Leslie Porter 9532b897aa make abstract - contains no tests
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163679 13f79535-47bb-0310-9956-ffa450edef68
2005-03-24 04:44:12 +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 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
Brett Leslie Porter b84d4bc35e revert <includes> and <excludes> in MDO to old format
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163666 13f79535-47bb-0310-9956-ffa450edef68
2005-03-22 14:26:28 +00:00
Brett Leslie Porter e0e405fe68 clean up plugin configuration handling
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163652 13f79535-47bb-0310-9956-ffa450edef68
2005-03-22 10:46:55 +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
Brett Leslie Porter 5a296f03c8 clean up old tests
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163623 13f79535-47bb-0310-9956-ffa450edef68
2005-03-21 01:01:35 +00:00
Brett Leslie Porter 8e9ec9c892 move log to AbstractPlugin, out of request. Request now contains only parameters (will move to fields) and marmalade context (can move to marmalade mojo wrapper)
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163622 13f79535-47bb-0310-9956-ffa450edef68
2005-03-21 00:07:39 +00:00
Brett Leslie Porter a593e7df88 change the plugin execution response to be an exception instead since it only handled failures.
any returns from success will be conveyed by the request, soon to be converted into fields on the plugin. These will eventually be extracted using OGNL, but this is all post alpha-1 work


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163621 13f79535-47bb-0310-9956-ffa450edef68
2005-03-20 23:22:01 +00:00
Brett Leslie Porter 829e2051f6 PR: MNG-207
scope must be considered globally - redefining it weaker must not win.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163589 13f79535-47bb-0310-9956-ffa450edef68
2005-03-17 02:04:35 +00:00
John Dennis Casey e9a9323812 o Changed maven-user-model/UserModel/UserModelBuilder to maven-settings/MavenSettings/MavenSettingsBuilder.
This supports a change to a simpler local configuration file (~/.m2/settings.xml by default), which has the general format of:

<settings>
  <profiles>
    <profile>
      <active>true</active> <!-- not needed if this is the only profile -->
      <localRepository>/path/to/repo</localRepository>
    </profile>
    .
    .
    .
  </profiles>
  <servers>
    <server>
      <id>myserver</id>
      <username>me</username>
      <password>mypass</password>
      <privateKey>/path/to/key</privateKey>
      <passphrase>key-passphrase</passphrase>
    </server>
    .
    .
    .
  </servers>
  <proxies>
    <proxy>
      <active>true</active> <!-- not needed if this is the only proxy -->
      .
      .
      .
    </proxy>
    .
    .
    .
  </proxies>
</settings>

o Added special parameter named '#settings' which simply injects the current MavenSettings from the MavenSession into the request parameters.
o Adjusted the it-verifier and mboot2 accordingly.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163578 13f79535-47bb-0310-9956-ffa450edef68
2005-03-16 06:29:35 +00:00
Brett Leslie Porter de262b4236 o refactor usage of build methods
o do not do path resolution for repository POMs
o source poms override repository poms in the cache


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163577 13f79535-47bb-0310-9956-ffa450edef68
2005-03-16 05:08:50 +00:00
John Dennis Casey 4d1ca8da33 o Removed AuthenticationInfoProvider stuff
o Added ArtifactRepositoryFactory stuff to construct with AuthenticationInfo if possible.
o Added UserModelBuilder stuff for componentizing UserModel construction.
  -> DefaultUserModelBuilder has a configuration point 'userModelPath' which can redirect where it reads user.xml from (${user.home} is substitutable here).
o Added warning message to deployment plugin when deployment repo has no authentication info available.
o Added warning message for repos with null <id/> (auth info cannot be assigned here).
o Added a couple of debug-level messages for aid in debugging repo- and userModel-related problems.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163558 13f79535-47bb-0310-9956-ffa450edef68
2005-03-15 21:41:06 +00:00
Brett Leslie Porter a44b6f9726 flip pom format
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163511 13f79535-47bb-0310-9956-ffa450edef68
2005-03-10 01:35:25 +00:00
John Dennis Casey 7f6f4452f2 o Changed Set to List for remote repo handling so that we can maintain declarative ordering in remote repos we use.
o Added UserModel support, integrated with maven-artifact and wagon via AuthenticationInfoProvider implementation.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163501 13f79535-47bb-0310-9956-ffa450edef68
2005-03-09 05:48:31 +00:00
Brett Leslie Porter 1fe8c76a3d move all artifact creation to artifact factory - further refactoring planned
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163499 13f79535-47bb-0310-9956-ffa450edef68
2005-03-09 02:39:10 +00:00
Brett Leslie Porter e8a0f65e58 actually, test deps are transitive, just not for other test deps
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163496 13f79535-47bb-0310-9956-ffa450edef68
2005-03-08 07:11:43 +00:00
John Dennis Casey 77d3e6c5f5 o Added (pom|project)? to the eval pattern in the regex param extractor, to trim ${project.artifactid} to mean the same as ${artifactId} within the pom.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163490 13f79535-47bb-0310-9956-ffa450edef68
2005-03-08 06:06:22 +00:00
Brett Leslie Porter b5f8943edf transitive test dependencies should be ignored
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163488 13f79535-47bb-0310-9956-ffa450edef68
2005-03-08 06:01:43 +00:00
Brett Leslie Porter b31db60bff tests and repairs for scope
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163486 13f79535-47bb-0310-9956-ffa450edef68
2005-03-08 05:34:52 +00:00
Brett Leslie Porter 0d7111f7ba gone to maven-artifact
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163479 13f79535-47bb-0310-9956-ffa450edef68
2005-03-08 01:38:51 +00:00
John Dennis Casey 2513cb25aa o Added <pluginManagement/>
o Removed goal decoration.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163468 13f79535-47bb-0310-9956-ffa450edef68
2005-03-07 19:03:19 +00:00
Brett Leslie Porter 8c6292c23f remove <file>, add <scope>
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163463 13f79535-47bb-0310-9956-ffa450edef68
2005-03-07 08:15:26 +00:00