[ng-dhtml] putting the build tool thing to bed

Alex Russell alex at dojotoolkit.org
Tue Sep 28 01:36:56 CDT 2004


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Monday 27 September 2004 10:39 pm, Martin Cooper wrote:
> On Mon, 27 Sep 2004 22:23:43 -0700, Alex Russell 
<alex at dojotoolkit.org> wrote:
> > -----BEGIN PGP SIGNED MESSAGE-----
> > Hash: SHA1
> >
> > On Monday 27 September 2004 9:54 pm, Tom Trenka wrote:
> > > > Martin Cooper wrote:
> > > > |> Whoa. I can see the docs now: "To build Dojo yourself from
> > > > |> source, first install Subversion, Java, Ant, Python,
> > > > |> Docutils and Rhino. Then, on the following week, ...". ;-)
> > > >
> > > > Well, there's a difference between different user types:
> >
> > [ snip ]
> >

[ snip again ]

> > I also cringe at the multi-language, multi-tool hell we're slowly
> > winding up in, which is why I'm hacking on Rhino to give us doc
> > output and compression without using another language. I would
> > really, really like to keep our tools in one language if it can
> > be done, and I hesitate to use Java because it gets in the way so
> > much. OTOH, it's everywhere and a lot of stuff we need is mostly
> > done in Java. Regardless, our functional goals come first: full
> > documentation and test coverage, customization for various
> > environments, etc.
>
> You forgot an "IMHO" or "IMNSHO" again. Not everyone agrees that
> Java "gets in the way so much". Please try to separate opinion from
> fact, Alex. There is a difference. ;-)

Well, to some extent, there is counter-evidence to my opinion based on 
the fact that I'm using Java for so many things right now = ) I'm not 
going to apologize for my opinion of Java, though. The IMHO or IMNSHO 
qualifiers seemed un-necessaray since I was obviously the one making 
the statement, and as a result, what was said was quite clearly my 
opinion and not anyone else's.

But to the core of it: I've got some experience with Ant for these 
types of projects, and it's not pretty. Where Ant really shines is in 
letting project contributors get up-and-running in very little time. 
That's a great thing, and an advantage I want to preserve. I won't 
turn a blind eye to it's blemishes, though.

> If you're going to use Ant, why not embrace it instead of fighting
> it? 

I fully plan on embracing, extending, cajoling, and beating on Ant 
until such time as it does exactly what I want = )

> Instead of looking for ways to embed scripts within an Ant
> build file, why not just write any Ant tasks you need that don't
> already exist? Writing Ant tasks is easy.

Because of my other (likely incorrect and heretical) opinions about 
where XML does and doesn't belong = )

And what's wrong with script inside of Ant anyway? Isn't that what 
Jelly does? One of Ant's larger failings (again, IMNSHO) is that it 
repeats the XSLT mistake of doggedly insisting that it isn't a 
scripting language, when in fact, a scripting language is EXACTLY 
what's called for in a build tool! Make is glorified shell, and that 
is its greatest strength. Ant still needs improvement, and i'm not 
above most methods (hacking on Ant, tasks, or scripts) to get us to a 
workable, capable, nice-to-use, easy-to-maintain build system.

> > So in conclusion, I do feel your pain. I am working to par down
> > our dependencies to at most a single language if it can be done,
> > but we have other needs as well. I've often considered a putting
> > togeather a "fetch everything I need" shell script for the
> > various platforms you might be on, or at the very least make sure
> > they're available out of SVN.
>
> You mean like the way the Maven build tool downloads all required
> dependencies, based on a project XML file? Oh, but what am I
> thinking - that's a Java tool, and Java gets in the way, so we'd
> better not use that... ;-) ;-)

Maven won't get me Maven or Ant or Java = )

Maven's dependency satisfaction stuff seems to center around a 
centralized JAR mirroring system, which may have some utility for us 
(although why SVN isn't better for the same task confuses me). If 
Maven makes Ant better for our needs, we probably will wind up using 
it. Likewise, if Rhino/Jython/Jelly inside of Ant make it better to 
use, I'll be using them as well.

Regards

- -- 
Alex Russell
alex at dojotoolkit.org
alex at netWindows.org F687 1964 1EF6 453E 9BD0 5148 A15D 1D43 AB92 9A46
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (Darwin)

iD8DBQFBWQaIoV0dQ6uSmkYRAoNyAKDO6do7QMUzr0Pfvb9SqEJrkjGtQgCfTAtr
VBJHa2jCDOvOE7HBxiEJVt8=
=i4/4
-----END PGP SIGNATURE-----




More information about the NG-DHTML mailing list