Stefan Bodewig wrote:

On Thu, 11 Mar 2004, Vincent Massol <[EMAIL PROTECTED]> wrote:


The biggest problem is that Gump doesn't run the build in the same
than projects are running their builds! It's using sysclasspathonly
feature and that's not the way it's run by project.


[snip]

Maybe an alternative would be for Gump to try to run the project
using sysclasspatonly first and then if it fails, it will run
"normally". The reports would show both outcomes. That would provide
useful feedback.



Sure. This is part of the idea set on how to determine who is
responsible for a failing build.


I think a big part of the problem is that individual projects tend to either
include snapshots of their dependencies or profide a get-deps style
target that downloads snapshots of their dependencies from ibiblio.

While this is fine for a release, because the dependecies are effectively
hard-coded even for CVS HEAD, it is easy to forget to update the
dependencies over time.

I can see three possible solutions:

1. provide some logic in Gump to understand both snapshots of
dependencies in CVS and the Ant <get tag; nag if it looks like the
hard-coded dependencies are falling behind.


2. encourage projects to provide an Ant target or Maven goal that
cvs checkout's and builds each dependancy. This target would only
be used by developers to test integration.


3.  Ask ibiblio to provide softlinks called "*latest*.jar" that point to
the latest version of each project in each directory.  Ask projects to
upload their latest jar to ibiblio as part of their release process.  Ask
projects to remove their dependencies from their CVS and provide
a get-deps target/goal instead.  Ask projects to use "*latest*" in
their get-deps target/goal in CVS HEAD, only changing them
to a specific version temporarily at release time.

(1)  may be difficult to acomplish with projects dependant on, for
example, xml-xerces1.

(2) would probably not be all that useful as there would be no
guarantee that cvs HEAD is buildable - as we see every day with
Gump.

(3) expects a lot of everyone.  If projects follow good practice by
tagging a release, it wouldn't take much work to get Gump to
monitor which projects are friends of solution 3.

--
Michael


--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to