Hi Russel,
On Oct 24, 2009, at 9:01 AM, Russel Winder wrote:
On Sat, 2009-10-24 at 07:34 +1100, Adam Murdoch wrote:
You probably need to do a clean and then build Gradle (at least
until we
have incremental compilation).
It just struck me that you say Gradle doesn't yet have incremental
compilation. I had thought that the whole point of the DAG was that
each and every file was checked separately for needing to be compiled
and that all import dependencies were also checked to ensure that
transitive dependencies on changed files were transmitted through. If
this is not yet the case then it is likely that many people have been
working under a big misapprehension.
I don't think that many people have this misunderstanding. The DAG
contains task. The Java files are all compiled by one task. In this
case it is the job of the compile task to be smart.
One of the biggest problems with Java compilation is that Javac is
basically useless at handling these issues and Ant and Maven (and
Gant)
don't do anything extra. This is where SCons wins hugely since it
handles all this very, very carefully. This has to be Gradle's USP --
"no more always building from clean as with Ant and Maven".
Can I suggest that this be the blocking issue for 0.9?
We offer incremental compilation (via the Ant depend task under the
hood). At the moment you have to switch it on explicitly.
<compileTaskName>.options.useDepends = true
We might use this as the default for 0.9.
After 0.9 we are thinking about providing an own incremental compile
implementation which would also catch some cases which are not covered
by the Ant depend task. This would only work with Java 6. For Java 5
users we would still delegate to Ant depend.
- Hans
--
Hans Dockter
Gradle Project Manager
http://www.gradle.org
---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email