----- Original Message ---- > From: Niclas Hedhman <[EMAIL PROTECTED]> > To: river-dev@incubator.apache.org > Sent: Sunday, December 7, 2008 9:00:13 PM > Subject: Re: Deciding the Future > > On Sat, Dec 6, 2008 at 8:31 PM, Wade Chandler > wrote: > > > Looking over the build scripts, src directories, and other resource > directories, too the structure could be better laid out. For instance, there > is > a top level build.xml, then below in src there is build.xml. Too, under src > there are folders for manifest, configentry, and then the Java packages are > right there. There could be better separation. > > Under TDD mantra this is a red flag; If it is hard to set up tests, > then it is hard to work with the codebase. > > And from my experience, that is exactly what comes to mind, and the > way to get something up within a day is the "Launch All" convenience, > which is more like a End-User Application than a system development > kit. > > Well, I still think that there are a lot of room for improvement, and > instead of telling "each other"/"others" what should be done, I think > it is time for us to move into action.
Sure. We just need to keep communicating and making sure there is some majority agreement in things we do. Otherwise we'll have a mutiny and not really a community. Just a "let's not forget" kind of comment here. >The main problem I have is that > there is need for a structural make-over, which is not suitable for > small and evolutionary steps. Can we agree to open up a new branch? > > - Modularized into one 'module' per 'artifact'. > - Adoption of sound architectural principles. > - Testcases as near as possible to the code under test. > - JUnit as test framework. > - "Doers decide", i.e. "you don't like it, step up..." > Sounds good to me. I think we need to have a vote for Maven or Ant. A new thread which will be the vote. Now, one question this brings to mind. Folks like me who are new who want to help get things rolling. Do our votes count in these decisions or are we just worker Ants who can throw out ideas and our votes don't count? I wasn't clear on how that works in decision making at Apache if you are not a committer. Too, I'm on the fence for Maven. One major thing that I really think Maven will help is with IDEs. An IDE then just has to support Maven and the projects can be opened up automatically without IDE specific projects etc. I'm pretty certain this is true for NB and Eclipse as there are plugins for Maven for both. However, I too like Ant as it is very simple and flexible. Personally I haven't been pulled to Maven from Ant for my own projects. Too, for library repositories etc if we need them we can always use Ivy with Ant which can use Maven repositories among others. By breaking out the structures to be more modular and give some separation to file types etc and coupling most IDEs support Ant then getting to work on the projects using our favorite IDEs should not really be an issue I don't believe. NetBeans has what is called a Free Form project which one can point to an Ant script and give it some nudges to get going. It also has a new thing called Automatic projects which can discover things from build artifacts and Ant scripts etc. I assume Eclipse has something similar, is this true? So, besides this facet of Maven, to allow IDEs to work more seamless as a project overall, what else does it give us beyond repositories (as we have that in Ivy for Ant)? I know about pom.xml etc, and defined inter-dependencies, and that is a plus in my book. Does anyone have a good run down of the Maven versus Ant given the above? I have seen many versus things on Google, but one thing some folks I know tell me is that Maven isn't as strong in the scripting and tasks as Ant. Is this true? Can the two be used seemlessly? i.e. We need to do something to move files around, parsing them, other things, etc, can Maven build components to use in script files if we ever need them and the use them as Ant? Is it rich in defined tasks as Ant? I have seen that Maven supports extensions by Jelly, which I'm not very familiar. Does it also allow Java extensions? Seems that would/could come in very handy if needed. Too, I point to the fact that Tomcat still uses Ant, and went through this same discussion. I can't remember everything said on the lists back then. I haven't been trying to keep up lately as there is just too much to do for all mailing lists to come down my pipe. So, do any of the main Apache folks or anyone here know any more about that decision? What were the deciding factors? Was it just there were so many scripts in place already that no necessary gain came from using Maven? I say this because essentially we are talking about completely rewriting the build system for Jini, so as someone else said if we are going to Maven this would be as good a time as any. We should know why and why not to move better than I just like this or that it seems. Thanks, Wade ================== Wade Chandler, CCE Software Engineer and Developer, Certified Forensic Computer Examiner, NetBeans Dream Team Member, and NetBeans Board Member http://www.certified-computer-examiner.com http://wiki.netbeans.org/wiki/view/NetBeansDreamTeam http://www.netbeans.org