Re: Code Hierarchy and Build Process
I currently hate Maven with a grand passion. But, I'm open minded and am willing to be educated as to why people like it. I will make the same offer I made before: Three requirements: #1 Create a maven build system for iBATIS that achieves the exact same output, which includes: - one "click" build -- I'm not exaggerating here, SVN checkout, run ant or script...done. NOTHING else.. no config files, no nothing. - offline build -- no network connection required (perhaps after one build if it needs to grab dependencies initially) - echo arbitrary information to the command line, such as classpath in use and current version being built - all dependencies must be versioned and organized into developer dependencies (/devlib) and runtime/deploy dependencies (/lib) - HTML test reports - HTML coverage reports - exploded distribution - zipped distr - version number stamped on ibatis JAR file(s) as well as the zip distro - all achieved by Ant today. #2 Show that it's simpler than Ant in at least one way. For example: - less XML configuration - fewer requirements - smaller overall source base size - more/better compatibility with tools/frameworks/IDEs - the current Ant build is 258 lines and integrates and runs from any IDE #3 Show that it does something Ant doesn't. For example: - Signs, MD5, and Uploads to Apache dist (with no additional dependencies or configuration) - I don't think these are unreasonable requirements. In fact if even one is missed, it would make me wonder why the hell we'd even bother. I'm for simplicity over all else. No Ant isn't the best example of a build tool in history. But it's simple and it works. Clinton On Tue, May 6, 2008 at 10:35 PM, Nathan Maves <[EMAIL PROTECTED]> wrote: > Brandon reply below. > > I am completely for using Maven 2 and conforming our source tree to it. > There were three issues, iirc, that (if they have not been fixed by the > maven crew) will require a bit of compromise or plugin writing. > > #1 A serial number generator for builds does not easily exist for maven. > We had talked about using the svn repo revision number. > #2 We tried finding a way to add a date to our deployment zip file. > Unfortunately maven did not provide an easy way to access a current date > anywhere. > #3 There have been issues with the coverage tools combining with the unit > test tools. If we ran the unit tests, coverage tests, and also generated > reports, the tests would wind up running 3 times. > > That being said, I think we should tackle these issues and make Maven our > build tool. Maven has excellent IDE integration now (IDEA and Netbeans are > both good). It makes it a snap to setup projects and get running. > Additionally, the Apache nerds have some maven processes that can help us to > more easily release software in accordance with Apache requirements. > > Brandon > > On Tue, May 6, 2008 at 10:34 PM, Nathan Maves <[EMAIL PROTECTED]> > wrote: > > > The ideas/requests/demands just keep coming... > > > > With a clean slate for IB3 I want to propose a few things. I have been > > using Maven2 for a while now and even use it in my day to day development. > > My first suggestion is to lay out the new source tree to map to the maven2 > > style of convention over configuration. Even if we choose not to use Maven > > as the build/deployment process it is the most logical and thought out > > hierarchy that I have seen. > > > > On the topic of Maven2 I would like to nominate is as the > > build/deployment process. Maven2 offers so many pre-built plugins for many > > useful things from coverage reports to unit test results. If there is > > something that Maven2 does not have I am sure we could write a quick plugin > > to get it done. I have also been using a new CI tool with Maven2 ( > > https://hudson.dev.java.net/ ). Insanely easy to install and > > configure. Just reads your pom file from maven and away you go. Like most > > it can poll the svn repo for changes and make snapshots as we commit. > > > > Let me know what you guys think > > > > Nathan > > >
Re: Code Hierarchy and Build Process
Thanks for sharing your passions. My thoughts are below... #1... A. one "click" has never been a problem for maven. There seems to be a lot of insinuation that maven requires a lot of config files. I'm not sure where you are getting this. The only thing that we might need to do is break out the assembly config. But, that is because it is about packaging artifacts all together and not about building the individual jars. So, if you are saying we can't have an assembly config then gimme a break. Your request is denied because it requires something that is not possible and is not possible for a rational and organized reason. B. offline build... never been an issue for maven. So long as you have the needed jars locally. But this is true of any codebase. C. Are you referring to the final zipe file structure or the source tree. If you are referring to the source tree. You will be denied on that one as well because maven doesn't have dependencies in the local source tree. If you are talking about the final packaged output... we already demonstrated that with the current ibatis maven build. D. HTML Test Reports - Been possible for a long time E. Coverage Reports - Been possible for a long time F. Exploded Distributions - Not sure of what you are referring to here. If you are referring to seeing the final product of the zip file before it is zipped then that is just a matter of copying all the sources to a folder in the assembly config. We demonstrated that with the current maven build in ibatis. G. Zipped Distro - No problem H. I don't think this is necessary. We can look into adding the build number to the META-INF. But, this should be possible. #2 - Getting up and going in my IDE is a snap because of current IDE integration. Less than a minute. With Ant. I always have to checkout the project figure out what the heck people are doing in their ant script because EVERYONE does something different. Ramp up time sucks. I always enjoy how people will blend build artifacts with static artifacts. Can't simply delete the output folder. You always have to make sure you use their custom wacky ant scripts and hope you don't call the wrong task. #3 - See #2 "I'm for simplicity over all else. No Ant isn't the best example of a build tool in history. But it's simple and it works." I am too. That is why i use maven :D I got tired of trying to figure out everyone's wacky Ant scripts. I think you need to take your blood pressure medicine. ;-) Maven is an acceptable build system. Instead of coming out with aggressive posturing, give your fellow developers the benefit of the doubt. Do you think we would use it if we thought it was a horrid pile of crap? Everything comes with it's strengths and weaknesses. I'll take the lack of a build number on the zip and jar any day over the amount of effort i expel trying to figure out ant scripts. Brandon On Wed, May 7, 2008 at 8:36 AM, Clinton Begin <[EMAIL PROTECTED]> wrote: > I currently hate Maven with a grand passion. But, I'm open minded and am > willing to be educated as to why people like it. I will make the same offer > I made before: > > Three requirements: > > #1 Create a maven build system for iBATIS that achieves the exact same > output, which includes: > - one "click" build -- I'm not exaggerating here, SVN checkout, run > ant or script...done. NOTHING else.. no config files, no nothing. - offline build -- no network connection required (perhaps after one build if it needs to grab dependencies initially) > - echo arbitrary information to the command line, such as classpath in > use and current version being built > - all dependencies must be versioned and organized into developer > dependencies (/devlib) and runtime/deploy dependencies (/lib) > - HTML test reports > - HTML coverage reports > - exploded distribution > - zipped distr > - version number stamped on ibatis JAR file(s) as well as the zip > distro > - all achieved by Ant today. > > #2 Show that it's simpler than Ant in at least one way. For example: > - less XML configuration > - fewer requirements > - smaller overall source base size > - more/better compatibility with tools/frameworks/IDEs > - the current Ant build is 258 lines and integrates and runs from any > IDE > > #3 Show that it does something Ant doesn't. For example: > - Signs, MD5, and Uploads to Apache dist (with no additional > dependencies or configuration) > - > > I don't think these are unreasonable requirements. In fact if even one is > missed, it would make me wonder why the hell we'd even bother. > > I'm for simplicity over all else. No Ant isn't the best example of a > build tool in history. But it's simple and it works. > > Clinton > > > On Tue, May 6, 2008 at 10:35 PM, Nathan Maves <[EMAIL PROTECTED]> > wrote: > > > Brandon reply below. > > > > I am completely for using Maven 2 and conforming our source tree to it. > > There were three issues, i
Re: Code Hierarchy and Build Process
I wasn't implying that Maven COULDN'T do anything I was just laying out what I would want to see from a maven build. >> So, if you are saying we can't have an assembly config then gimme a break. What I mean is that if I can't check it out and build without having to perform some developer level/local config then forget it. >> I don't think this is necessary. We can look into adding the build number to the META-INF. But, this should be possible. Versions are important. The more clear we can be with our version number the better. I'd like it in the filename, because it helps people, including us. One of the reasons Java sucks these days is the lack of good version control of JAR files. The best we can do is put the version number in the name of the JAR file to help people know which version they're using. It also helps us on support lists... recall the days when people couldn't tell which version they were using because they copied it from somewhere else. META-INF is a good second best... but I hear this Maven thing is supposed to be good, so I'd expect it to be able to fill this simple requirement. I'm already not impressed with the excuses. I laid out what I think are fairly simple requirements that any build system should support. >> Getting up and going in my IDE I honestly don't want to mix the needs of the development tool with the build tool. The build is a separate entity. Furthermore, let's not mix the problems of other projects (which may very well be solved by Maven). iBATIS does not have the problem you describe. It's a well structured and organized directory. /devlib /lib /src /test.. there's no magic to it. I understand what you're saying, but iBATIS simply doesn't have the problem. >> I think you need to take your blood pressure medicine. Let's not get too immature about it. I'm being open minded and fair. I asked for very simple things that are achieved with a 260 line Ant file with 14 well described tasks. I've yet to see: 1) A major problem or flaw pointed out with the iBATIS Ant build. I don't care about the general case of Maven vs. Ant and Project X -- what's wrong with the *iBATIS* build? 2) A major advantage to using Maven for iBATIS (other than the potentially easier one-time setup of the IDE -- neat, but one-time IDE config vs. daily build maintenance...) 3) Confirmation that Maven can meet some very simple requirements I laid out. Instead I hear excuses and borderline personal attacks (which I know Brandon doesn't really mean, but it's still a shitty way to debate). Come on guys. You're doing a piss poor job of making your case for Maven with that approach. Don't argue. Look at what the current build does. Do it with Maven cleanly, and while meeting all of those simple requirements -- and you've won your case. Clinton On Wed, May 7, 2008 at 8:21 AM, Brandon Goodin <[EMAIL PROTECTED]> wrote: > Thanks for sharing your passions. My thoughts are below... > > #1... > > A. one "click" has never been a problem for maven. There seems to be a lot > of insinuation that maven requires a lot of config files. I'm not sure where > you are getting this. The only thing that we might need to do is break out > the assembly config. But, that is because it is about packaging artifacts > all together and not about building the individual jars. So, if you are > saying we can't have an assembly config then gimme a break. Your request is > denied because it requires something that is not possible and is not > possible for a rational and organized reason. > > B. offline build... never been an issue for maven. So long as you have the > needed jars locally. But this is true of any codebase. > > C. Are you referring to the final zipe file structure or the source tree. > If you are referring to the source tree. You will be denied on that one as > well because maven doesn't have dependencies in the local source tree. If > you are talking about the final packaged output... we already demonstrated > that with the current ibatis maven build. > > D. HTML Test Reports - Been possible for a long time > > E. Coverage Reports - Been possible for a long time > > F. Exploded Distributions - Not sure of what you are referring to here. If > you are referring to seeing the final product of the zip file before it is > zipped then that is just a matter of copying all the sources to a folder in > the assembly config. We demonstrated that with the current maven build in > ibatis. > > G. Zipped Distro - No problem > > H. I don't think this is necessary. We can look into adding the build > number to the META-INF. But, this should be possible. > > #2 - Getting up and going in my IDE is a snap because of current IDE > integration. Less than a minute. With Ant. I always have to checkout the > project figure out what the heck people are doing in their ant script > because EVERYONE does something different. Ramp up time sucks. I always > enjoy how people will blend build artifacts with stat
Re: Code Hierarchy and Build Process
>> A serial number generator for builds does not easily exist for maven. We had talked about using the svn repo revision number. SVN repo number would be great. It's a little long because it's Apache's global repos, but it would be more useful than the somewhat meaningless build number we have now. This would be an improvement. The caveat would be that a build would always have to be done against an unmodified working copy with means one of two things: svn status must return no changes before the distro build, or the distro build always has to checkout a clean copy from SVN. >> We tried finding a way to add a date to our deployment zip file. Unfortunately maven did not provide an easy way to access a current date anywhere. No need for the date on the zip file, just the Major.minor.bug-build numbers. >> There have been issues with the coverage tools combining with the unit test tools. If we ran the unit tests, coverage tests, and also generated reports, the tests would wind up running 3 times. Ewww I'm sure there must be a way around that. Sounds like something the rest of the world would complain about too. Clinton On Tue, May 6, 2008 at 10:35 PM, Nathan Maves <[EMAIL PROTECTED]> wrote: > Brandon reply below. > > I am completely for using Maven 2 and conforming our source tree to it. > There were three issues, iirc, that (if they have not been fixed by the > maven crew) will require a bit of compromise or plugin writing. > > #1 A serial number generator for builds does not easily exist for maven. > We had talked about using the svn repo revision number. > #2 We tried finding a way to add a date to our deployment zip file. > Unfortunately maven did not provide an easy way to access a current date > anywhere. > #3 There have been issues with the coverage tools combining with the unit > test tools. If we ran the unit tests, coverage tests, and also generated > reports, the tests would wind up running 3 times. > > That being said, I think we should tackle these issues and make Maven our > build tool. Maven has excellent IDE integration now (IDEA and Netbeans are > both good). It makes it a snap to setup projects and get running. > Additionally, the Apache nerds have some maven processes that can help us to > more easily release software in accordance with Apache requirements. > > Brandon > > On Tue, May 6, 2008 at 10:34 PM, Nathan Maves <[EMAIL PROTECTED]> > wrote: > > > The ideas/requests/demands just keep coming... > > > > With a clean slate for IB3 I want to propose a few things. I have been > > using Maven2 for a while now and even use it in my day to day development. > > My first suggestion is to lay out the new source tree to map to the maven2 > > style of convention over configuration. Even if we choose not to use Maven > > as the build/deployment process it is the most logical and thought out > > hierarchy that I have seen. > > > > On the topic of Maven2 I would like to nominate is as the > > build/deployment process. Maven2 offers so many pre-built plugins for many > > useful things from coverage reports to unit test results. If there is > > something that Maven2 does not have I am sure we could write a quick plugin > > to get it done. I have also been using a new CI tool with Maven2 ( > > https://hudson.dev.java.net/ ). Insanely easy to install and > > configure. Just reads your pom file from maven and away you go. Like most > > it can poll the svn repo for changes and make snapshots as we commit. > > > > Let me know what you guys think > > > > Nathan > > >
Re: Code Hierarchy and Build Process
Comments are mixed in: On Wed, May 7, 2008 at 10:38 AM, Clinton Begin <[EMAIL PROTECTED]> wrote: > > I wasn't implying that Maven COULDN'T do anything I was just laying > out what I would want to see from a maven build. > > >> So, if you are saying we can't have an assembly config then gimme a > break. > > What I mean is that if I can't check it out and build without having to > perform some developer level/local config then forget it. > This would entirely depend on what we are doing. I don't believe iBATIS would ever require this unless we used a key for uploading artifacts to a location. In that case you would need to add the configuration to your settings.xml. There is also the initial installation of maven. But, most people will be installing ant as well to run any ant builds that we provide. > >> I don't think this is necessary. We can look into adding the build > number to the META-INF. But, this should be possible. > > Versions are important. The more clear we can be with our version number > the better. I'd like it in the filename, because it helps people, including > us. One of the reasons Java sucks these days is the lack of good version > control of JAR files. The best we can do is put the version number in the > name of the JAR file to help people know which version they're using. It > also helps us on support lists... recall the days when people couldn't tell > which version they were using because they copied it from somewhere else. > META-INF is a good second best... but I hear this Maven thing is supposed to > be good, so I'd expect it to be able to fill this simple requirement. > Fair enough. I didn't say it was impossible. I just said it wasn't necessary to tack it onto everything. > I'm already not impressed with the excuses. I laid out what I think are > fairly simple requirements that any build system should support. > What excuses? I'm simply getting information and asking you to clarify your requests. On top of that I'm stating where I don't agree with your requirements. > > >> Getting up and going in my IDE > > I honestly don't want to mix the needs of the development tool with the > build tool. The build is a separate entity. Furthermore, let's not mix the > problems of other projects (which may very well be solved by Maven). iBATIS > does not have the problem you describe. It's a well structured and > organized directory. /devlib /lib /src /test.. there's no magic to it. > I understand what you're saying, but iBATIS simply doesn't have the > problem. > The beauty of this is that you get both. Can you say that about Ant? hint... nope. > > >> I think you need to take your blood pressure medicine. > > Let's not get too immature about it. I'm being open minded and fair. I > asked for very simple things that are achieved with a 260 line Ant file with > 14 well described tasks. I've yet to see: You're just a hater :D and you left of my wink from that quote. > > > 1) A major problem or flaw pointed out with the iBATIS Ant build. I don't > care about the general case of Maven vs. Ant and Project X -- what's wrong > with the *iBATIS* build? I still need to take the time to figure out the iBATIS ant build. I don't need to do that with maven. I know what tasks to run in order to build it. > > 2) A major advantage to using Maven for iBATIS (other than the potentially > easier one-time setup of the IDE -- neat, but one-time IDE config vs. daily > build maintenance...) Standard project layout is easy to get into and get going. A clearly defined structure that leaves no question about where future artifacts go. Unambiguous communication of required project structures is very important. So, why not go with a common, well known, and documented structure? > > 3) Confirmation that Maven can meet some very simple requirements I laid > out. > > Instead I hear excuses and borderline personal attacks (which I know > Brandon doesn't really mean, but it's still a shitty way to debate). Come > on guys. You're doing a piss poor job of making your case for Maven with > that approach. > I'll be honest here, no winks. You tone here is very aggressive. If you want to keep it civil you should put some winkies in there. > > Don't argue. Look at what the current build does. Do it with Maven > cleanly, and while meeting all of those simple requirements -- and you've > won your case. > I'm not arguing I'm providing information. As I stated before in my initial email. We had provided a build for maven on the current ibatis. There were some issues that we felt needed to be resolved. I'm pretty sure they have been resolved. But, we have to give it a go. Additionally, it would be good to have the folder structures conform to the maven specification. I would like to see this in place before we endeavor to write a pom and assembly for it. Brandon > > Clinton > > > On Wed, May 7, 2008 at 8:21 AM, Brandon Goodin <[EMAIL PROTECTED]> > wrote: > > > Thanks for shar
Re: Code Hierarchy and Build Process
As a follow up to all who are reading this thread. Let me be very clear. Any aggressive comments are made in jest and fun. We are all good friends here and enjoy the big brother banter. Please don't take this as an opportunity to truly dig on any one of us. Muchos Gracias, Brandon On Wed, May 7, 2008 at 11:13 AM, Brandon Goodin <[EMAIL PROTECTED]> wrote: > Comments are mixed in: > > On Wed, May 7, 2008 at 10:38 AM, Clinton Begin <[EMAIL PROTECTED]> > wrote: > > > > > I wasn't implying that Maven COULDN'T do anything I was just laying > > out what I would want to see from a maven build. > > > > >> So, if you are saying we can't have an assembly config then gimme a > > break. > > > > What I mean is that if I can't check it out and build without having to > > perform some developer level/local config then forget it. > > > > This would entirely depend on what we are doing. I don't believe iBATIS > would ever require this unless we used a key for uploading artifacts to a > location. In that case you would need to add the configuration to your > settings.xml. > > There is also the initial installation of maven. But, most people will be > installing ant as well to run any ant builds that we provide. > > > > >> I don't think this is necessary. We can look into adding the build > > number to the META-INF. But, this should be possible. > > > > Versions are important. The more clear we can be with our version > > number the better. I'd like it in the filename, because it helps people, > > including us. One of the reasons Java sucks these days is the lack of good > > version control of JAR files. The best we can do is put the version number > > in the name of the JAR file to help people know which version they're > > using. It also helps us on support lists... recall the days when people > > couldn't tell which version they were using because they copied it from > > somewhere else. META-INF is a good second best... but I hear this Maven > > thing is supposed to be good, so I'd expect it to be able to fill this > > simple requirement. > > > > Fair enough. I didn't say it was impossible. I just said it wasn't > necessary to tack it onto everything. > > > > I'm already not impressed with the excuses. I laid out what I think are > > fairly simple requirements that any build system should support. > > > > What excuses? I'm simply getting information and asking you to clarify > your requests. On top of that I'm stating where I don't agree with your > requirements. > > > > > > >> Getting up and going in my IDE > > > > I honestly don't want to mix the needs of the development tool with the > > build tool. The build is a separate entity. Furthermore, let's not mix the > > problems of other projects (which may very well be solved by Maven). iBATIS > > does not have the problem you describe. It's a well structured and > > organized directory. /devlib /lib /src /test.. there's no magic to it. > > I understand what you're saying, but iBATIS simply doesn't have the > > problem. > > > > The beauty of this is that you get both. Can you say that about Ant? > hint... nope. > > > > > > >> I think you need to take your blood pressure medicine. > > > > Let's not get too immature about it. I'm being open minded and fair. I > > asked for very simple things that are achieved with a 260 line Ant file with > > 14 well described tasks. I've yet to see: > > > You're just a hater :D and you left of my wink from that quote. > > > > > > > 1) A major problem or flaw pointed out with the iBATIS Ant build. I > > don't care about the general case of Maven vs. Ant and Project X -- what's > > wrong with the *iBATIS* build? > > > I still need to take the time to figure out the iBATIS ant build. I don't > need to do that with maven. I know what tasks to run in order to build it. > > > > > > 2) A major advantage to using Maven for iBATIS (other than the > > potentially easier one-time setup of the IDE -- neat, but one-time IDE > > config vs. daily build maintenance...) > > > Standard project layout is easy to get into and get going. A clearly > defined structure that leaves no question about where future artifacts go. > Unambiguous communication of required project structures is very important. > So, why not go with a common, well known, and documented structure? > > > > > > 3) Confirmation that Maven can meet some very simple requirements I laid > > out. > > > > Instead I hear excuses and borderline personal attacks (which I know > > Brandon doesn't really mean, but it's still a shitty way to debate). Come > > on guys. You're doing a piss poor job of making your case for Maven with > > that approach. > > > > I'll be honest here, no winks. You tone here is very aggressive. If you > want to keep it civil you should put some winkies in there. > > > > > > Don't argue. Look at what the current build does. Do it with Maven > > cleanly, and while meeting all of those simple requirements -- and you've > > won your case. > > > > I'
Re: Code Hierarchy and Build Process
On Wed, May 7, 2008 at 10:15 AM, Brandon Goodin <[EMAIL PROTECTED]> wrote: > As a follow up to all who are reading this thread. Let me be very clear. Any > aggressive comments are made in jest and fun. We are all good friends here > and enjoy the big brother banter. Please don't take this as an opportunity > to truly dig on any one of us. ...well, except for Brandon. He really is a butthead. ;-) Funny how everyone gets so worked up about how we'll implement build.sh, isn't it? :-) Since everyone has an opinion on this, here's mine: I think we should use Maven. I agree with Clinton that there aren't *problems* with the current iBATIS build, but at the same time, it would simplify how we do releases, because as we are seeing, there are more requests (even from us) for maven artifacts by our users, and mavenizing our build will make meeting our needs easier. IMO, the things that Clinton is asking for are not unreasonable, but they are not uber-critical either. Let's be really honest here: How critical is it that we are able to "echo arbitrary information to the command line, such as classpath in use and current version being built"? Seriously? :-/ Reality check: "Signs, MD5, and Uploads to Apache dist (with no additional dependencies or configuration)" - how's this going to work, via telepathy? :-D It's going to be different if we use a different tool. Neither tool is perfect, so yes, it'll suck. But ant sucks, too - just in a different way. My vote is we arrange the source tree to fit what maven expects. Clinton: I don't care if you don't have to do that with ant. :-P Then, lets see how close we can get to all of the current ant script. If we can't get 100%, I'm OK with that, if we can get close and work towards that goal. At the end of the day, which ever one makes it easier for me to use iBATIS (I really don't care about anyone else, sorry) is the one I want. For me, that means Maven is the better choice. This is a one time task, so maintenance is not that big of a deal, and it'll output the jar (like ant does) and the maven artifacts (like ant does not). It does more, and is a one time investment, let's just get it done and move on. Larry
Re: Code Hierarchy and Build Process
>> Reality check: "Signs, MD5, and Uploads to Apache dist (with no >> additional dependencies or configuration)" - how's this going to work, >> via telepathy? :-D Trusted hosts (or same host) and a continuous integration server with a manually invoked distribution target. CI server runs as the "deploy" user which is a trusted signatory of the Apache distribution system. Clinton On Wed, May 7, 2008 at 10:46 AM, Larry Meadors <[EMAIL PROTECTED]> wrote: > On Wed, May 7, 2008 at 10:15 AM, Brandon Goodin > <[EMAIL PROTECTED]> wrote: > > As a follow up to all who are reading this thread. Let me be very clear. > Any > > aggressive comments are made in jest and fun. We are all good friends > here > > and enjoy the big brother banter. Please don't take this as an > opportunity > > to truly dig on any one of us. > > ...well, except for Brandon. He really is a butthead. ;-) > > Funny how everyone gets so worked up about how we'll implement > build.sh, isn't it? :-) > > Since everyone has an opinion on this, here's mine: I think we should use > Maven. > > I agree with Clinton that there aren't *problems* with the current > iBATIS build, but at the same time, it would simplify how we do > releases, because as we are seeing, there are more requests (even from > us) for maven artifacts by our users, and mavenizing our build will > make meeting our needs easier. > > IMO, the things that Clinton is asking for are not unreasonable, but > they are not uber-critical either. > > Let's be really honest here: How critical is it that we are able to > "echo arbitrary information to the command line, such as classpath in > use and current version being built"? Seriously? :-/ > > Reality check: "Signs, MD5, and Uploads to Apache dist (with no > additional dependencies or configuration)" - how's this going to work, > via telepathy? :-D > > It's going to be different if we use a different tool. Neither tool is > perfect, so yes, it'll suck. But ant sucks, too - just in a different > way. > > My vote is we arrange the source tree to fit what maven expects. > Clinton: I don't care if you don't have to do that with ant. :-P Then, > lets see how close we can get to all of the current ant script. If we > can't get 100%, I'm OK with that, if we can get close and work towards > that goal. > > At the end of the day, which ever one makes it easier for me to use > iBATIS (I really don't care about anyone else, sorry) is the one I > want. For me, that means Maven is the better choice. This is a one > time task, so maintenance is not that big of a deal, and it'll output > the jar (like ant does) and the maven artifacts (like ant does not). > It does more, and is a one time investment, let's just get it done and > move on. > > Larry >
Re: Code Hierarchy and Build Process
The other thing that can be nice about maven is for ibatis extension development. We are making iB3 more accessible. This means that we are likely to have more people wanting to write against ibatis. Maven makes it nicer to create dependencies on nightly builds/snapshots. Brandon On Wed, May 7, 2008 at 11:54 AM, Clinton Begin <[EMAIL PROTECTED]> wrote: > >> Reality check: "Signs, MD5, and Uploads to Apache dist (with no > >> additional dependencies or configuration)" - how's this going to work, > >> via telepathy? :-D > > Trusted hosts (or same host) and a continuous integration server with a > manually invoked distribution target. CI server runs as the "deploy" user > which is a trusted signatory of the Apache distribution system. > > Clinton > > > On Wed, May 7, 2008 at 10:46 AM, Larry Meadors <[EMAIL PROTECTED]> > wrote: > > > On Wed, May 7, 2008 at 10:15 AM, Brandon Goodin > > <[EMAIL PROTECTED]> wrote: > > > As a follow up to all who are reading this thread. Let me be very > > clear. Any > > > aggressive comments are made in jest and fun. We are all good friends > > here > > > and enjoy the big brother banter. Please don't take this as an > > opportunity > > > to truly dig on any one of us. > > > > ...well, except for Brandon. He really is a butthead. ;-) > > > > Funny how everyone gets so worked up about how we'll implement > > build.sh, isn't it? :-) > > > > Since everyone has an opinion on this, here's mine: I think we should > > use Maven. > > > > I agree with Clinton that there aren't *problems* with the current > > iBATIS build, but at the same time, it would simplify how we do > > releases, because as we are seeing, there are more requests (even from > > us) for maven artifacts by our users, and mavenizing our build will > > make meeting our needs easier. > > > > IMO, the things that Clinton is asking for are not unreasonable, but > > they are not uber-critical either. > > > > Let's be really honest here: How critical is it that we are able to > > "echo arbitrary information to the command line, such as classpath in > > use and current version being built"? Seriously? :-/ > > > > Reality check: "Signs, MD5, and Uploads to Apache dist (with no > > additional dependencies or configuration)" - how's this going to work, > > via telepathy? :-D > > > > It's going to be different if we use a different tool. Neither tool is > > perfect, so yes, it'll suck. But ant sucks, too - just in a different > > way. > > > > My vote is we arrange the source tree to fit what maven expects. > > Clinton: I don't care if you don't have to do that with ant. :-P Then, > > lets see how close we can get to all of the current ant script. If we > > can't get 100%, I'm OK with that, if we can get close and work towards > > that goal. > > > > At the end of the day, which ever one makes it easier for me to use > > iBATIS (I really don't care about anyone else, sorry) is the one I > > want. For me, that means Maven is the better choice. This is a one > > time task, so maintenance is not that big of a deal, and it'll output > > the jar (like ant does) and the maven artifacts (like ant does not). > > It does more, and is a one time investment, let's just get it done and > > move on. > > > > Larry > > > >
Re: Code Hierarchy and Build Process
Sorry for the spotty emails. just stuff coming to my mind. Another point would be the whole deploying to the maven repository can be made easier. We want to be able to provide users with source artifacts and jar artifacts all properly packaged with maven. I can do this manually. But, i'd rather not. So, if we can accomplish all that the ant tool does and get the artifacts out to the maven repo, it would be all that much better. Brandon On Wed, May 7, 2008 at 12:03 PM, Brandon Goodin <[EMAIL PROTECTED]> wrote: > The other thing that can be nice about maven is for ibatis extension > development. We are making iB3 more accessible. This means that we are > likely to have more people wanting to write against ibatis. Maven makes it > nicer to create dependencies on nightly builds/snapshots. > > Brandon > > > On Wed, May 7, 2008 at 11:54 AM, Clinton Begin <[EMAIL PROTECTED]> > wrote: > > > >> Reality check: "Signs, MD5, and Uploads to Apache dist (with no > > >> additional dependencies or configuration)" - how's this going to > > work, > > >> via telepathy? :-D > > > > Trusted hosts (or same host) and a continuous integration server with a > > manually invoked distribution target. CI server runs as the "deploy" user > > which is a trusted signatory of the Apache distribution system. > > > > Clinton > > > > > > On Wed, May 7, 2008 at 10:46 AM, Larry Meadors <[EMAIL PROTECTED]> > > wrote: > > > > > On Wed, May 7, 2008 at 10:15 AM, Brandon Goodin > > > <[EMAIL PROTECTED]> wrote: > > > > As a follow up to all who are reading this thread. Let me be very > > > clear. Any > > > > aggressive comments are made in jest and fun. We are all good > > > friends here > > > > and enjoy the big brother banter. Please don't take this as an > > > opportunity > > > > to truly dig on any one of us. > > > > > > ...well, except for Brandon. He really is a butthead. ;-) > > > > > > Funny how everyone gets so worked up about how we'll implement > > > build.sh, isn't it? :-) > > > > > > Since everyone has an opinion on this, here's mine: I think we should > > > use Maven. > > > > > > I agree with Clinton that there aren't *problems* with the current > > > iBATIS build, but at the same time, it would simplify how we do > > > releases, because as we are seeing, there are more requests (even from > > > us) for maven artifacts by our users, and mavenizing our build will > > > make meeting our needs easier. > > > > > > IMO, the things that Clinton is asking for are not unreasonable, but > > > they are not uber-critical either. > > > > > > Let's be really honest here: How critical is it that we are able to > > > "echo arbitrary information to the command line, such as classpath in > > > use and current version being built"? Seriously? :-/ > > > > > > Reality check: "Signs, MD5, and Uploads to Apache dist (with no > > > additional dependencies or configuration)" - how's this going to work, > > > via telepathy? :-D > > > > > > It's going to be different if we use a different tool. Neither tool is > > > perfect, so yes, it'll suck. But ant sucks, too - just in a different > > > way. > > > > > > My vote is we arrange the source tree to fit what maven expects. > > > Clinton: I don't care if you don't have to do that with ant. :-P Then, > > > lets see how close we can get to all of the current ant script. If we > > > can't get 100%, I'm OK with that, if we can get close and work towards > > > that goal. > > > > > > At the end of the day, which ever one makes it easier for me to use > > > iBATIS (I really don't care about anyone else, sorry) is the one I > > > want. For me, that means Maven is the better choice. This is a one > > > time task, so maintenance is not that big of a deal, and it'll output > > > the jar (like ant does) and the maven artifacts (like ant does not). > > > It does more, and is a one time investment, let's just get it done and > > > move on. > > > > > > Larry > > > > > > > >
Re: Code Hierarchy and Build Process
Geez I'm really sorry to fire off yet another... Yet another point. Ant integration has become quite nice with maven. So, it is possible we can augment maven insufficiencies with Ant. Shutting up, Brandon On Wed, May 7, 2008 at 12:05 PM, Brandon Goodin <[EMAIL PROTECTED]> wrote: > Sorry for the spotty emails. just stuff coming to my mind. Another point > would be the whole deploying to the maven repository can be made easier. We > want to be able to provide users with source artifacts and jar artifacts all > properly packaged with maven. I can do this manually. But, i'd rather not. > So, if we can accomplish all that the ant tool does and get the artifacts > out to the maven repo, it would be all that much better. > > Brandon > > > On Wed, May 7, 2008 at 12:03 PM, Brandon Goodin <[EMAIL PROTECTED]> > wrote: > > > The other thing that can be nice about maven is for ibatis extension > > development. We are making iB3 more accessible. This means that we are > > likely to have more people wanting to write against ibatis. Maven makes it > > nicer to create dependencies on nightly builds/snapshots. > > > > Brandon > > > > > > On Wed, May 7, 2008 at 11:54 AM, Clinton Begin <[EMAIL PROTECTED]> > > wrote: > > > > > >> Reality check: "Signs, MD5, and Uploads to Apache dist (with no > > > >> additional dependencies or configuration)" - how's this going to > > > work, > > > >> via telepathy? :-D > > > > > > Trusted hosts (or same host) and a continuous integration server with > > > a manually invoked distribution target. CI server runs as the "deploy" > > > user > > > which is a trusted signatory of the Apache distribution system. > > > > > > Clinton > > > > > > > > > On Wed, May 7, 2008 at 10:46 AM, Larry Meadors < > > > [EMAIL PROTECTED]> wrote: > > > > > > > On Wed, May 7, 2008 at 10:15 AM, Brandon Goodin > > > > <[EMAIL PROTECTED]> wrote: > > > > > As a follow up to all who are reading this thread. Let me be very > > > > clear. Any > > > > > aggressive comments are made in jest and fun. We are all good > > > > friends here > > > > > and enjoy the big brother banter. Please don't take this as an > > > > opportunity > > > > > to truly dig on any one of us. > > > > > > > > ...well, except for Brandon. He really is a butthead. ;-) > > > > > > > > Funny how everyone gets so worked up about how we'll implement > > > > build.sh, isn't it? :-) > > > > > > > > Since everyone has an opinion on this, here's mine: I think we > > > > should use Maven. > > > > > > > > I agree with Clinton that there aren't *problems* with the current > > > > iBATIS build, but at the same time, it would simplify how we do > > > > releases, because as we are seeing, there are more requests (even > > > > from > > > > us) for maven artifacts by our users, and mavenizing our build will > > > > make meeting our needs easier. > > > > > > > > IMO, the things that Clinton is asking for are not unreasonable, but > > > > they are not uber-critical either. > > > > > > > > Let's be really honest here: How critical is it that we are able to > > > > "echo arbitrary information to the command line, such as classpath > > > > in > > > > use and current version being built"? Seriously? :-/ > > > > > > > > Reality check: "Signs, MD5, and Uploads to Apache dist (with no > > > > additional dependencies or configuration)" - how's this going to > > > > work, > > > > via telepathy? :-D > > > > > > > > It's going to be different if we use a different tool. Neither tool > > > > is > > > > perfect, so yes, it'll suck. But ant sucks, too - just in a > > > > different > > > > way. > > > > > > > > My vote is we arrange the source tree to fit what maven expects. > > > > Clinton: I don't care if you don't have to do that with ant. :-P > > > > Then, > > > > lets see how close we can get to all of the current ant script. If > > > > we > > > > can't get 100%, I'm OK with that, if we can get close and work > > > > towards > > > > that goal. > > > > > > > > At the end of the day, which ever one makes it easier for me to use > > > > iBATIS (I really don't care about anyone else, sorry) is the one I > > > > want. For me, that means Maven is the better choice. This is a one > > > > time task, so maintenance is not that big of a deal, and it'll > > > > output > > > > the jar (like ant does) and the maven artifacts (like ant does not). > > > > It does more, and is a one time investment, let's just get it done > > > > and > > > > move on. > > > > > > > > Larry > > > > > > > > > > > > >
Re: Code Hierarchy and Build Process
On Wed, May 7, 2008 at 11:07 AM, Brandon Goodin <[EMAIL PROTECTED]> wrote: > Shutting up, Yeah, we'll keep dreaming. ;-) Larry
[VOTE] Use Maven 2 as iBATIS 3 build system.
This is a vote to switch our build system from Ant to Maven 2. Binding votes will be accepted from committers of the iBATIS for Java project. All other votes will be taken as opinion, but non-binding. This does not imply that we will use Maven for our website, but we could indeed consider that separately. This is specifically for building the iBATIS 3 library. -1 Not in favor, stick with Ant, it rules. 0 Doesn't matter. As long as it builds as well as it currently does. +1 Totally in favor, use Maven 2, it offers great benefits and is the way of the future. Cheers, Clinton
Re: [VOTE] Use Maven 2 as iBATIS 3 build system.
My Vote: [0] Doesn't matter. As long as it builds as well as it currently does. Clinton On Wed, May 7, 2008 at 11:09 AM, Clinton Begin <[EMAIL PROTECTED]> wrote: > > This is a vote to switch our build system from Ant to Maven 2. > > Binding votes will be accepted from committers of the iBATIS for Java > project. All other votes will be taken as opinion, but non-binding. > > This does not imply that we will use Maven for our website, but we could > indeed consider that separately. This is specifically for building the > iBATIS 3 library. > > -1 Not in favor, stick with Ant, it rules. > > 0 Doesn't matter. As long as it builds as well as it currently does. > > +1 Totally in favor, use Maven 2, it offers great benefits and is the way > of the future. > > > Cheers, > Clinton >
Re: Code Hierarchy and Build Process
Vote is out. If it's positive, I'll switch the directory structure to the Maven 2 structure, but will update the Ant build and leave the /build, /devlib and /lib until someone has a chance to configure the Maven project. Once it's building nicely, I'll remove the old directories and Ant build. Ceremonies for the old Ant build file to be held at Apache Funeral Services. Donations supporting the Mental Case Anger Management fund appreciated. Clinton ;-) On Wed, May 7, 2008 at 11:09 AM, Larry Meadors <[EMAIL PROTECTED]> wrote: > On Wed, May 7, 2008 at 11:07 AM, Brandon Goodin > <[EMAIL PROTECTED]> wrote: > > Shutting up, > > Yeah, we'll keep dreaming. ;-) > > Larry >
Re: [VOTE] Use Maven 2 as iBATIS 3 build system.
If those are the only options, I'll vote +1. If it were free form, I'd vote "+0.5 I think they both suck, but maven *might* suck less."? ;-) Larry On Wed, May 7, 2008 at 11:11 AM, Clinton Begin <[EMAIL PROTECTED]> wrote: > My Vote: > > [0] Doesn't matter. As long as it builds as well as it currently does. > > Clinton > > > > On Wed, May 7, 2008 at 11:09 AM, Clinton Begin <[EMAIL PROTECTED]> > wrote: > > > > > This is a vote to switch our build system from Ant to Maven 2. > > > > Binding votes will be accepted from committers of the iBATIS for Java > project. All other votes will be taken as opinion, but non-binding. > > > > This does not imply that we will use Maven for our website, but we could > indeed consider that separately. This is specifically for building the > iBATIS 3 library. > > > > -1 Not in favor, stick with Ant, it rules. > > > > 0 Doesn't matter. As long as it builds as well as it currently does. > > > > +1 Totally in favor, use Maven 2, it offers great benefits and is the way > of the future. > > > > > > Cheers, > > Clinton > > > >
Re: [VOTE] Use Maven 2 as iBATIS 3 build system.
Brandon Goodin's vote: +1 On Wed, May 7, 2008 at 12:11 PM, Clinton Begin <[EMAIL PROTECTED]> wrote: > My Vote: > > [0] Doesn't matter. As long as it builds as well as it currently does. > > Clinton > > > On Wed, May 7, 2008 at 11:09 AM, Clinton Begin <[EMAIL PROTECTED]> > wrote: > > > > > This is a vote to switch our build system from Ant to Maven 2. > > > > Binding votes will be accepted from committers of the iBATIS for Java > > project. All other votes will be taken as opinion, but non-binding. > > > > This does not imply that we will use Maven for our website, but we could > > indeed consider that separately. This is specifically for building the > > iBATIS 3 library. > > > > -1 Not in favor, stick with Ant, it rules. > > > > 0 Doesn't matter. As long as it builds as well as it currently does. > > > > +1 Totally in favor, use Maven 2, it offers great benefits and is the > > way of the future. > > > > > > Cheers, > > Clinton > > > >
Re: Code Hierarchy and Build Process
Hahah, I think it's a good sign that we all have enough passion for this stuff to argue about it, and that we are able to call each other names, but still get along well enough to play well together. ;-) Larry On Wed, May 7, 2008 at 11:15 AM, Clinton Begin <[EMAIL PROTECTED]> wrote: > Vote is out. > > If it's positive, I'll switch the directory structure to the Maven 2 > structure, but will update the Ant build and leave the /build, /devlib and > /lib until someone has a chance to configure the Maven project. Once it's > building nicely, I'll remove the old directories and Ant build. Ceremonies > for the old Ant build file to be held at Apache Funeral Services. Donations > supporting the Mental Case Anger Management fund appreciated. > > Clinton ;-) > > > > On Wed, May 7, 2008 at 11:09 AM, Larry Meadors <[EMAIL PROTECTED]> > wrote: > > On Wed, May 7, 2008 at 11:07 AM, Brandon Goodin > > > > <[EMAIL PROTECTED]> wrote: > > > Shutting up, > > > > Yeah, we'll keep dreaming. ;-) > > > > Larry > > > >
Re: Code Hierarchy and Build Process
Anyone know off hand if Maven can easily support FindBugs, Checkstyle and/or Jalopy? Cheers, Clinton On Wed, May 7, 2008 at 11:18 AM, Larry Meadors <[EMAIL PROTECTED]> wrote: > Hahah, I think it's a good sign that we all have enough passion for > this stuff to argue about it, and that we are able to call each other > names, but still get along well enough to play well together. ;-) > > Larry > > > On Wed, May 7, 2008 at 11:15 AM, Clinton Begin <[EMAIL PROTECTED]> > wrote: > > Vote is out. > > > > If it's positive, I'll switch the directory structure to the Maven 2 > > structure, but will update the Ant build and leave the /build, /devlib > and > > /lib until someone has a chance to configure the Maven project. Once > it's > > building nicely, I'll remove the old directories and Ant build. > Ceremonies > > for the old Ant build file to be held at Apache Funeral Services. > Donations > > supporting the Mental Case Anger Management fund appreciated. > > > > Clinton ;-) > > > > > > > > On Wed, May 7, 2008 at 11:09 AM, Larry Meadors <[EMAIL PROTECTED]> > > wrote: > > > On Wed, May 7, 2008 at 11:07 AM, Brandon Goodin > > > > > > <[EMAIL PROTECTED]> wrote: > > > > Shutting up, > > > > > > Yeah, we'll keep dreaming. ;-) > > > > > > Larry > > > > > > > >
Re: Code Hierarchy and Build Process
NM, found it! Yes, to all 3. On Wed, May 7, 2008 at 11:23 AM, Clinton Begin <[EMAIL PROTECTED]> wrote: > > Anyone know off hand if Maven can easily support FindBugs, Checkstyle > and/or Jalopy? > > Cheers, > Clinton > > > > On Wed, May 7, 2008 at 11:18 AM, Larry Meadors <[EMAIL PROTECTED]> > wrote: > > > Hahah, I think it's a good sign that we all have enough passion for > > this stuff to argue about it, and that we are able to call each other > > names, but still get along well enough to play well together. ;-) > > > > Larry > > > > > > On Wed, May 7, 2008 at 11:15 AM, Clinton Begin <[EMAIL PROTECTED]> > > wrote: > > > Vote is out. > > > > > > If it's positive, I'll switch the directory structure to the Maven 2 > > > structure, but will update the Ant build and leave the /build, /devlib > > and > > > /lib until someone has a chance to configure the Maven project. Once > > it's > > > building nicely, I'll remove the old directories and Ant build. > > Ceremonies > > > for the old Ant build file to be held at Apache Funeral Services. > > Donations > > > supporting the Mental Case Anger Management fund appreciated. > > > > > > Clinton ;-) > > > > > > > > > > > > On Wed, May 7, 2008 at 11:09 AM, Larry Meadors < > > [EMAIL PROTECTED]> > > > wrote: > > > > On Wed, May 7, 2008 at 11:07 AM, Brandon Goodin > > > > > > > > <[EMAIL PROTECTED]> wrote: > > > > > Shutting up, > > > > > > > > Yeah, we'll keep dreaming. ;-) > > > > > > > > Larry > > > > > > > > > > > > > >
Re: Code Hierarchy and Build Process
+1 from me On Wed, May 7, 2008 at 11:25 AM, Clinton Begin <[EMAIL PROTECTED]> wrote: > > NM, found it! Yes, to all 3. > > > On Wed, May 7, 2008 at 11:23 AM, Clinton Begin <[EMAIL PROTECTED]> > wrote: > > > > > Anyone know off hand if Maven can easily support FindBugs, Checkstyle > > and/or Jalopy? > > > > Cheers, > > Clinton > > > > > > > > On Wed, May 7, 2008 at 11:18 AM, Larry Meadors <[EMAIL PROTECTED]> > > wrote: > > > > > Hahah, I think it's a good sign that we all have enough passion for > > > this stuff to argue about it, and that we are able to call each other > > > names, but still get along well enough to play well together. ;-) > > > > > > Larry > > > > > > > > > On Wed, May 7, 2008 at 11:15 AM, Clinton Begin < > > > [EMAIL PROTECTED]> wrote: > > > > Vote is out. > > > > > > > > If it's positive, I'll switch the directory structure to the Maven 2 > > > > structure, but will update the Ant build and leave the /build, > > > /devlib and > > > > /lib until someone has a chance to configure the Maven project. > > > Once it's > > > > building nicely, I'll remove the old directories and Ant build. > > > Ceremonies > > > > for the old Ant build file to be held at Apache Funeral Services. > > > Donations > > > > supporting the Mental Case Anger Management fund appreciated. > > > > > > > > Clinton ;-) > > > > > > > > > > > > > > > > On Wed, May 7, 2008 at 11:09 AM, Larry Meadors < > > > [EMAIL PROTECTED]> > > > > wrote: > > > > > On Wed, May 7, 2008 at 11:07 AM, Brandon Goodin > > > > > > > > > > <[EMAIL PROTECTED]> wrote: > > > > > > Shutting up, > > > > > > > > > > Yeah, we'll keep dreaming. ;-) > > > > > > > > > > Larry > > > > > > > > > > > > > > > > > > > > >
Re: [VOTE] Use Maven 2 as iBATIS 3 build system.
+1 On Wed, May 7, 2008 at 11:16 AM, Brandon Goodin <[EMAIL PROTECTED]> wrote: > Brandon Goodin's vote: > +1 > > > On Wed, May 7, 2008 at 12:11 PM, Clinton Begin <[EMAIL PROTECTED]> > wrote: > > > My Vote: > > > > [0] Doesn't matter. As long as it builds as well as it currently does. > > > > Clinton > > > > > > On Wed, May 7, 2008 at 11:09 AM, Clinton Begin <[EMAIL PROTECTED]> > > wrote: > > > > > > > > This is a vote to switch our build system from Ant to Maven 2. > > > > > > Binding votes will be accepted from committers of the iBATIS for Java > > > project. All other votes will be taken as opinion, but non-binding. > > > > > > This does not imply that we will use Maven for our website, but we > > > could indeed consider that separately. This is specifically for building > > > the iBATIS 3 library. > > > > > > -1 Not in favor, stick with Ant, it rules. > > > > > > 0 Doesn't matter. As long as it builds as well as it currently does. > > > > > > +1 Totally in favor, use Maven 2, it offers great benefits and is the > > > way of the future. > > > > > > > > > Cheers, > > > Clinton > > > > > > > >
Re: [VOTE] Use Maven 2 as iBATIS 3 build system.
+0 - doesn't really matter to me. I don't know Maven yet - maybe this will be a good opportunity for me to learn it. Jeff Butler On Wed, May 7, 2008 at 12:09 PM, Clinton Begin <[EMAIL PROTECTED]> wrote: > > This is a vote to switch our build system from Ant to Maven 2. > > Binding votes will be accepted from committers of the iBATIS for Java > project. All other votes will be taken as opinion, but non-binding. > > This does not imply that we will use Maven for our website, but we could > indeed consider that separately. This is specifically for building the > iBATIS 3 library. > > -1 Not in favor, stick with Ant, it rules. > > 0 Doesn't matter. As long as it builds as well as it currently does. > > +1 Totally in favor, use Maven 2, it offers great benefits and is the way > of the future. > > > Cheers, > Clinton >