I suppose maven-artifact is a bad example here, since it's now officially moving into its own structure in SVN. Perhaps a better one would be the build planner/lifecycle APIs, or even the plugin- resolution/management features. These aren't likely to separate from the main Maven release cycle, so it becomes a bit of a problem differentiating "approved" public APIs from the other guts of Maven. This is what I had in mind when I threw this proposal together, even though I opted for the most well-known API (maven-artifact). :-)

-john

On Aug 15, 2007, at 10:57 AM, Brett Porter wrote:

I'm definitely +1 on the idea.

I'm not sure whether aggregating them in one artifact makes sense though (it sounds a bit like the embedder API too). It could be a good way (in the interim) to start exposing "safe" functionality, though I feel in the long term the public API of the individual modules should be well defined enough that it isn't an issue any more.

- brett

On 16/08/2007, at 12:42 AM, John Casey wrote:

Hi,

I'd like to propose that for Maven trunk/2.1 we capture all plugin- facing APIs and facades inside a single maven-api artifact. This would enumerate in a very clear fashion the public APIs that we need to support. We're approaching a turning point in Maven, where we'll have plugins that could feasibly run in both 2.0.x and 2.x (>= 2.1), and these plugins need a mechanism for coping with what will probably be critical changes in the internals of Maven.

Recent discussions about artifact resolution from plugins begin to point at this need (eg. using maven-artifact directly vs. using the version of maven-artifact, along with accompanying interfaces, that come with Maven itself). I understand that some of this might seem redundant in the presence of new facades introduced to maven- artifact itself...I was thinking of this more as a "This is everything you can do with Maven from inside a Mojo" artifact.

WDYT?

-john
---
John Casey
Committer and PMC Member, Apache Maven
mail: jdcasey at commonjava dot org
blog: http://www.ejlife.net/blogs/john



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---
John Casey
Committer and PMC Member, Apache Maven
mail: jdcasey at commonjava dot org
blog: http://www.ejlife.net/blogs/john


Reply via email to