Note to all, I am not trying to usurp things, I want to try and improve things...

Steve Loughran wrote:
The issue is not the build of the axis distro, that is just "ant
compile" for the jars, ant dist for the full package. The many build
files kick in when doing ant test.

And if you went to write your own soap implementation (a lightweight
client would be nice BTW), then you will find the issues are
-interop w/ other systems
-wsdl to java
-functional testing

and your life will soon get complex. Ms have whole test teams dedicated
to interop, we have a hundred+ build files that rerun the test suite
every six hours.

Yes, the interop process is what gets everyone. It is the reason why I would be *foolish*, absolutely *foolish* to start my own project at this point - unless I had a team of developers.


Now, I clearly have a historical bias toward Ant, but I am open to
technology that improves the build process, where that includes your
build, my build of axis, my build of apps that depend on axis, big
builds of products (jboss.net, websphere) that depend on axis. And to
support those, stability of build process is important.

On a sidenote, I read on maven-dev or maven-user that jboss is switching to maven. And, all I ask is that you *look* at maven (or centipede, but I happen to be slightly biased). I also offer my asistance for what its worth in this area.


I also think the troublespot is not the core distro, but the tests.

We do need to fix that. The current iteration gives us
-ability to control dependencies in a package

By this I think you mean, if the JMS jar isn't present, don't build the JMS stuff. Granted, Maven cannot do this. However, I think it makes more sense to have axis-core.jar and then axis-jms-component.jar, etc, etc. This has the added advantage of cleaning up the core code, no matter what build system is used. No more optional components in the core would be a good thing IMHO.


-ability to run a single test

Once again, I don't believe Maven has this. I could patch it relatively easily to do so though. This would *definitely* need to be in for Axis. I can for sure get this in before 1.0 I would believe if it is not already there.


-ability to have non-standard builds in a test

By this I assume you mean situations like code generation from wsdl. Maven already supports this kind of thing. See below where I will talk about it more.


at the expense of
 -the same build file replicated (We could fix that, to an extent)
 -expose memory leaks in javac (pre1.4) and ant (pre 1.5.4 & 1.6alpha).
 -slow build process

 Changing the build process isnt the solution. Or maybe it is, but it
 isnt the real problem, which is we need to reexamine what our test
 process is.

I find the test process quite clunky in axis at the moment. Not that I don't appreciate the work that has been put into this process. I know this is a *huge* task.


Anyway, maven makes my life easier enough that I'm going to convert axis to it anyway on my machine. The tests will take a week or two to convert over since I am not familiar with every one. I will be posting copies on my website and that should give everyone a chance to try it out and decide. Hows that?

Regards,

- Dan

--
Dan Diephouse
http://junktoast.com




Reply via email to