Return-Path: Delivered-To: apmail-maven-m2-dev-archive@www.apache.org Received: (qmail 57784 invoked from network); 24 Jan 2005 09:12:06 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur-2.apache.org with SMTP; 24 Jan 2005 09:12:06 -0000 Received: (qmail 87200 invoked by uid 500); 24 Jan 2005 09:12:05 -0000 Delivered-To: apmail-maven-m2-dev-archive@maven.apache.org Received: (qmail 87185 invoked by uid 500); 24 Jan 2005 09:12:05 -0000 Mailing-List: contact m2-dev-help@maven.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: list-post: List-Id: "Maven 2 Developers List" Reply-To: "Maven 2 Developers List" Delivered-To: mailing list m2-dev@maven.apache.org Received: (qmail 87169 invoked by uid 99); 24 Jan 2005 09:12:05 -0000 X-ASF-Spam-Status: No, hits=0.1 required=10.0 tests=FORGED_RCVD_HELO X-Spam-Check-By: apache.org Received-SPF: neutral (hermes.apache.org: local policy) Received: from anchor-post-32.mail.demon.net (HELO anchor-post-32.mail.demon.net) (194.217.242.90) by apache.org (qpsmtpd/0.28) with ESMTP; Mon, 24 Jan 2005 01:12:04 -0800 Received: from kremvax.demon.co.uk ([80.177.9.193] helo=sputnik.kremvax.net) by anchor-post-32.mail.demon.net with esmtp (Exim 4.42) id 1Ct0GP-000ERf-8S for m2-dev@maven.apache.org; Mon, 24 Jan 2005 09:12:01 +0000 Received: by sputnik.kremvax.net (Postfix, from userid 1000) id 9AF70441C; Mon, 24 Jan 2005 09:12:00 +0000 (GMT) Subject: Re: Jason's lifecycle doco From: "Mark H. Wilkinson" To: Maven 2 Developers List In-Reply-To: <1106424475.4491.37.camel@localhost.localdomain> References: <41F24386.7000404@apache.org> <1106424475.4491.37.camel@localhost.localdomain> Content-Type: text/plain Content-Transfer-Encoding: 7bit Date: Mon, 24 Jan 2005 09:12:00 +0000 Message-Id: <1106557920.5975.10.camel@sputnik.kremvax.net> Mime-Version: 1.0 X-Mailer: Evolution 2.0.2 (2.0.2-3) X-Virus-Checked: Checked X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N On Sat, 2005-01-22 at 12:07 -0800, Jason van Zyl wrote: > On Sat, 2005-01-22 at 04:13, Brett Porter wrote: > > - generating a site, which may well invoke other portions of this > > lifecycle (although it'll be great to ensure such things as tests don't > > get run again like they do now, unless its deliberate) > > within that the analysis that Mark > described would be invoked to prevent any duplicate work. I think I'm right to say that the reason m1 has problems with goals being run multiple times is the attainGoal element. The normal goal graph that's built declaratively can be analysed to make sure a goal is only executed once in a session. Goals called through attainGoal aren't (and can't be in general) part of this analysis. If we can model the whole of the build process as a graph we can analyse it to prevent things being executed more than once. If we leave an escape hatch for plugins to invoke goals as part of their execution we're likely to lose this ability. (I think we're safe here, as I presume the plugin interface won't be extended to allow plugins to invoke goals.) -Mark.