Please see my comments below.
Thanks,
Raymond
----- Original Message -----
From: "Jean-Sebastien Delfino" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Sunday, January 13, 2008 12:26 AM
Subject: Re: How to run incremental builds of the Tuscany SCA tree
Raymond Feng wrote:
[snip]
Beyond performance, I don't think svn stat is good way to handle the case
that the project has been updated from svn but the build is not run yet.
I now ported the timestamp check from the maven-compiler-plugin and it
should give us the capability to be incremental.
http://svn.apache.org/viewvc?rev=603783&view=rev
[snip]
With these changes, I'm sorry to say that the incremental build plugin has
become unusable for me, with a few basic flaws:
- The logic that you ported from the maven-compiler-plugin fails to detect
changes as usually my IDE has already compiled the .java files to .class
files.
- If module A has changed, module B depends on A, and if A builds OK but
B's tests fail, a subsequent incremental build will not try to run B's
tests as A will not appear as changed anymore.
These are two goog catches. I guess the only reliable way is a marker to
know if (and when) a module has been sucessfully buit by maven. Maybe we can
use the .modified file to keep the timestamp for the last successful build
of a module.
- Did you remove the simplistic check for .modified files that I had
initially, which worked for my naive but very common use case?
Yes. My previous assumption was that it not necessay any more with the
timestamp checks.
I don't understand all the sophisticated code that was added to the plugin
to support the logic that now breaks me. Could you please help and restore
a simple version of the plugin that just works?
I added the check back. Can you try? But there is a flaw too. If a module is
just updated with changes from the svn and there is no diff between the
workspace and the repo. In this case, the module should still be marked as
changed.
I'm happy if people want to play around with super sophisticated plugin
solutions and spend time to debug them, but it would be great if we could
keep this one simple, as I'm trying to get some work done with it.
Thanks.
--
Jean-Sebastien
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]