ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dominique Devienne" <>
Subject Re: EasyAnt project
Date Tue, 28 Oct 2008 18:37:55 GMT
On Tue, Oct 28, 2008 at 10:38 AM, Jean-Louis BOUDART
<> wrote:
> 2008/10/27 Stefan Bodewig <>
>> I'm not good at names.  I understand why this is a good name in the
>> context of EasyAnt but struggle with the same name when applied to
>> "pure" Ant.
>> I recall being confused by the phase mapping when Xavier first
>> suggested it.

> By typing ant checkstyle-report you only generate checkstyle report.
> By typing ant javadoc you only generate javadoc report.
> By typing ant report you generate ALL targets related to the report phase.
> This allow you more modularity than creating a target like :
> <target name="report" depends="javadoc,checkstyle-report"/>
> Is it more clear?

FWIW, I'm not fond of the "phase" name either. What you describe is
better described as a target-group, with any target being able to join
the group at will, and where there's no implicit intra-group
dependencies, and no "body" to the target-group (i.e. the group is
"abstract" in a way).

Your example would read just as well, if not better, written as
<target name="foo" group="bar" depends="...">...</target>.

Just as you seem to propose, I'd be in favor of requiring your <phase>
or my <target-group> to be explicitly declared before it can be
referenced. This would avoid typos implicitly creating groups
unbeknown to the build writer / fat fingered individual ;-)

I think the notion of target-group is more self-explicit than the phase one.

>> > - introduce two different kind of import (what we call use /
>> > extends)
>> I think you will quickly find support for this separation here, in
>> particular if we throw in user definded prefixes where the writer of
>> the build file that uses another build file gets to define the prefix
>> of targets - hi, DD ;-)
> I really not understand what you mean here :'(

Just Stefan pocking gentle fun at me, because I vehemently argued for
what you propose when import was introduced. If you look back at the
archives, I was strongly against using the import*ed* build file name
in the import*er*, as it needlessly coupled the two, when good
compartmentalization is essential to flexible and scalable designs (I
even proposed the ability of the import*er* to give its own prefix as
well). I also argued for separate import/include, just like in XSLT.
In both cases my objections were ignored. So it's interesting that a
separate group of Frenchmen now wants these same changes in Ant.

When I argue what I believe is the right way to do something, and my
point is being dismissed in favor of a lesser design (at least to me),
this typically leaves me frustrated. Stefan "remue le couteau dans la
plaie" comme on dit chez nous ;-) --DD

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message