avalon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ryan Shaw <ryan.s...@stanfordalumni.org>
Subject Re: Depchecker.
Date Fri, 19 Apr 2002 14:31:05 GMT
Jeff Turner wrote:

> So you absolutely *need* isolation from external changes. Isolation is
> necessary until the moment when you can say "yes my code works fine",
> and can tick off that variable. Then, and only then, should you consider
> the effects of other variable changes.
> 
> The build system supports this isolation principle in another way.
> You'll notice that the default target is 'jar', which builds a jar in
> build/lib/. However, the depchecking system runs the 'dist.lite' target,
> which builds a jar in dist/, and this is where the "excalibur-*.jar"
> properties point to.
> 
> The thinking behind this is that build/lib/*.jar will change on every
> build, and it's API contracts are not stable enough even for other
> subprojects to rely on. So there's a dist/ directory, whose jars are
> *intended* to be relied on by other subprojects. They are relatively
> stable, and only built on demand by other subprojects, instead of "by
> accident" when the user types 'ant'.

I see what you saying. However, I think this increases the risk that
people will check in broken code, because their code works with the
"dist" jar, and they forget to check to see if it actually builds 
with the latest "build" code.

This is bad, because it means the people to discover this won't be
the ones who understand how to fix it (the developers of the broken
code).

But, like I said, I see the isolation argument too. But can't this
be achieved by not doing a CVS update when you have half-developed
code in your source tree? Wait until the part you are actively 
developing is stable. *Then* update, and rest assured that depchecker
will verify that your new code works smoothly with the very latest
CVS code before you checkin. Saves you getting scolded by GUMP later.

Ryan

--
To unsubscribe, e-mail:   <mailto:avalon-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:avalon-dev-help@jakarta.apache.org>


Mime
View raw message