Yeah, I started thinking more about it and changed my mind (or, at least
thought about taking things in a different direction). The people on this
list are right, it isn't very consistent to allow a few tasks at the top
level and not the others. I responded by suggesting we allow <target>s
within <target>s and removing (or deprecating) the idea of <project> - it
would turn into a <target> itself. That way there really wouldn't be the
target-less build scripts. The script itself is one big target.
This could also lead to some interesting ways of including other build
files. You could imagine a build script that looks like:
unittest.xml:
<target name="unitTest" default="unitTestMsg">
<anInitTask/>
<anotherInitTask/>
<target="unitTestMsg>
<junit/>
</target>
</target>
build.xml:
<target name="main" default="someOtherTarget">
<target ref="unittest.xml" target="unitTest"/> <!-- in-place
includes the unitTest target into this file -->
<target name="someOtherTarget" depends="unitTest">
<sendEmailIfTargetSucceedsTask/>
</target>
</target>
Also, like I said before, a few things may have to be worked out, but I
think it could be made backwards compatible.
But I'm sure all of this stuff has been suggested before.
-Aaron
> -----Original Message-----
> From: Stefan Bodewig [mailto:[EMAIL PROTECTED]
> Sent: Monday, July 22, 2002 4:10 AM
> To: [EMAIL PROTECTED]
> Subject: Re: [VOTE] target-less build files
>
>
> On Fri, 19 Jul 2002, Aaron Siri <[EMAIL PROTECTED]> wrote:
>
> > 1. Do people want a build system or a scripting language?
>
> I don't think this is the real question here, but your point that it
> pushes Ant into the scripty direction is taken.
>
> > 2. I don't buy the "removing the target requirement makes it easier
> > for newbies" argument.
>
> "... for newbies with simple build requirements"
>
> > Targets aren't too difficult to figure out
>
> Sure.
>
> > and are one of the basic constructs within a build system
>
> Not necessarily IMHO.
>
> Do you need an explicit target if there really only is one? I see
> target-less build files like a make file that only defines ALL (and
> think it would be easier if I don't even have to define that).
>
> > 3. Finally, maybe I missed something, but I don't see any problems
> > these suggestions are solving.
>
> There are a lot of tasks that should be allowed at the top-level with
> the same right <property> is allowed there. What we want to solve is
> the "why is <property> allowed, but <condition> is not" type of
> questions together with cleaning up Ant in that we don't have
> hard-wired names for tasks that are allowed to be at the top level.
>
> Stefan
>
> --
> To unsubscribe, e-mail:
> <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail:
> <mailto:[EMAIL PROTECTED]>
>
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>