I'd like to see what people think about cleaning up the plugin manager for
use as a separate API. The reason I think this is important is so we can
clean out the site plugin influence from the maven lifecycle, and so we can
make it easier to create compound plugins. I'll talk about each of these
below:

1. remove the site plugin from the maven lifecycle.

 I was a little surprised to see the way report mojos are handled in the
old lifecycle executor (now the build planner stuff, though reporting is a
little broken for reports that fork their own executions). The reports are
collected and made available for anything that @requiresReports...which is
literally just the site plugin, AFAIK. I think a much simpler answer here is
to have the site plugin *invoke* the reports it needs. We could do this via
@execute phase="reports" where the reports phase is in a separate
lifecycle...or, if we have a decent public API for invoking Maven plugins,
the site plugin could just invoke them directly.

2. create compound plugins.

 In some cases (like the assembly or release plugins), mojos get to be
pretty complex and hard to manage. In many cases, these plugins could reuse
the behavior of other existing plugins, if those plugins were designed for
reuse. In cases where the plugins just need to replicate build-time actions
of other plugins, it may make more sense to allow them to invoke those mojos
or lifecycle phases directly. This goes beyond @execute, since logic can be
introduced in between executions, and executions could become conditional.

The DefaultPluginManager is something like 1600 lines of code now, which
makes it a hot spot in the maven project, ripe for refactoring. In the
process of performing such a refactoring, we could make the plugin
invocation features a first-class citizen, capable of being reused outside
of Maven's core. We may not want to offer a similar user-friendly API for
resolving plugins, since it might be good to force plugins that invoke other
plugins to declare those plugins as dependencies, particularly since the
artifact-resolution API should address this part...but the plugin invocation
framework should be accessible, IMO.

What does anyone else think about this?

-john

On 5/13/07, Brett Porter <[EMAIL PROTECTED]> wrote:

Quick summary of where we got to:
- in attendance was Eirik Bjørsnøs, Edwin Punzalan, Eric Redmond,
Carlos Sanchez, Kenney Westerhof, Andrew Williams, Jason van Zyl, and
myself.
- basic discussion of Maven 2.1 roadmap
- we have a few wiki pages with content to bring together
- had some Indian curries and kebabs (and felt the worse for it),
drank some beer, went out to drink some more beer and have dinner.

We discussed a couple of items:
- focus for 2.1 should be on stability, predictability and
reproducibility. Should aim to minimise the umber of roadmap items to
get a release out since the list of possibilities is long.
- already have lifecycle management, profile changes in place from John
- tool chain support is under way, prerequisite for moving to Java 5
- possible additions to dependency management such as a transitive
'compile only' scope, environment configuration templates, arbitrary
properties, activation of profiles via dependencies for dependency
groups, and applying sets of repositories to only some dependencies
- discussed making the POM extensible, particularly in the dependency
elements, plugin configuration.
- dependency management and OSGi
- ability to have alternate version schemes (or make ours a superset
of those we intend to support)

Some items for the roadmap:
- add Java 5 support (possibly requiring Java 5 runtime)
- add global exclusions to dependency management
- make plugin dependency element consistent with normal dependency
element
- if group is omitted from the dependency element, assume it is that
of the current pom for brevity
- we need to make changes to the project builder so that we can read
multiple models
- Jason is preparing a new proposal for maven-artifact which will be
sent to the list
- reviewed what was needed integration testing wise, agreed it was as
listed in SVN

Did I get everything?

We haven't yet split this into milestones or dates. I can start
looking at the wiki content and bring it all back together again as I
was already doing this for Continuum. We didn't really take a look at
JIRA - I imagine this was up to date not that long ago and may just
need a quick pass over.

Cheers,
Brett

On 10/05/2007, at 3:51 PM, Brett Porter wrote:

> How does Saturday sound for this?
>
> I may also have some availability tomorrow afternoon, but I might
> not be able to get over there, so I Was thinking I could use that
> time to try and get in sync with where everything is at so I come
> prepared on Saturday.
>
> Cheers,
> Brett
>
> On 25/04/2007, at 1:11 PM, Andrew Williams wrote:
>
>> Well, I am available just about any time, so I shan't put my free
>> times on the calendar, it will just take up space :)
>>
>> Andy
>>
>> On 25 Apr 2007, at 19:10, Jason van Zyl wrote:
>>
>>> Cool,
>>>
>>> John setup a calendar and if we all put available times there
>>> then I can propose some meeting times. With a little notice there
>>> is no problem getting space at the Terracotta offices. They have
>>> a big conference room with whiteboards we can use and they are
>>> fine with giving us the room for a couple days. So we can
>>> definitely do a BOF there and some working sessions.
>>>
>>> Thanks,
>>>
>>> Jason.
>>>
>>>
>>> On 25 Apr 07, at 12:14 PM 25 Apr 07, Carlos Sanchez wrote:
>>>
>>>> I'll be at J1 too
>>>>
>>>> On 4/25/07, Jason van Zyl <[EMAIL PROTECTED]> wrote:
>>>>> Hi,
>>>>>
>>>>> We can certainly continue any discussions from ApacheCon at
>>>>> JavaOne
>>>>> and I have chatted with the folks at Terracotta and they would be
>>>>> happy to put us up for a couple days in one of their conference
>>>>> rooms
>>>>> where we can work and hold a BOF if we so choose. We can also
>>>>> have a
>>>>> conference room for a 2-3 days in succession so we have a place to
>>>>> continue discussions once things get started.
>>>>>
>>>>> So again we might want to put up a calendar and let people slot in
>>>>> their available times and I will schedule the rooms at TC. They
>>>>> are
>>>>> not that far from Moscone centre and we can easily get there
>>>>> quickly
>>>>> by cab, I can probably organize some transportation as well.
>>>>>
>>>>> Thanks to the folks at Terracotta as it's generally hard to get
>>>>> facilities setup where people can actually work. There's room for
>>>>> 10-15 people so folks should probably sign up soon, or let me
>>>>> know. I
>>>>> know for sure that myself, Eric Redmond, Kenney Westerhof, Andy
>>>>> Williams, John Casey, and Brett Porter will be present. If we
>>>>> select
>>>>> a date for a BOF then I can definitely schedule that. It would
>>>>> be a
>>>>> great opportunity for any users in the area to come out as it will
>>>>> probably be the  highest concentration of core committers on
>>>>> record! :-)
>>>>>
>>>>> Just ping me if you're interested in attending something so I can
>>>>> make arrangements with Steve Harris at Terracotta.
>>>>>
>>>>> Thanks,
>>>>>
>>>>> Jason.
>>>>>
>>>>>
>>>>>
>>>>> ------------------------------------------------------------------
>>>>> ---
>>>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> I could give you my word as a Spaniard.
>>>> No good. I've known too many Spaniards.
>>>>                             -- The Princess Bride
>>>>
>>>> -------------------------------------------------------------------
>>>> --
>>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>>
>>>>
>>>
>>>
>>> --------------------------------------------------------------------
>>> -
>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]


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




--
John Casey
---
Maven Developer (http://maven.apache.org)
---
Blog: http://www.ejlife.net/blogs/buildchimp

Reply via email to