On Tue, Feb 26, 2008 at 9:37 PM, Gary Herndon <[EMAIL PROTECTED]> wrote:
> Hi, > > I recently tried to upgrade from alpha-2 to latest trunk build (from > 2/21/08) and noticed that I had to add an override="true" to my > <ivy:settings> ant task. I did this, and I was able to build my project > with trunk's ivy, but it broke my old builds (that didn't have > override=true in them). These buids are already tagged in my svn > repository, so I can't change them. I have installed ivy-alpha-2.jar > into my build machine's ant_home/lib folder, but I can't update it > because the old tags wont work. However, if I don't update it, then I > can't use latest trunk (which I need for having ${ivy.branch} set > correctly). > > Any ideas on what I can do? I don't want to put a copy of the ivy.jar > file into each project. I know ivy is in beta and is under no > obligaction to maintain compatibility with alpha, but is there any > reason why override can't default to "true"? We wanted to make people aware of what when settings are overridden. I think it's a good choice for users who start using Ivy, so I don't like the idea of changing this default. IMHO your build system is lacking of a bootstrapping feature: to be able to ensure reproducibility over time, you need to be able to reproduce an environment as close as possible to the original one. The best option for that is to rely on a bootstrapping mechanism which actually get the build environment, as it was when the original build was performed. This is even more true when you rely on an alpha version of a software. If your only problem is Ivy version, you could simply follow the mechanism provided as example in the go-ivy tutorial: get the version of ivy.jar you want in your build, and then use it. If you put this in the user home, the download will only occur once per user and per ivy version. Xavier > > Thanks, > Gary > -- Xavier Hanin - Independent Java Consultant http://xhab.blogspot.com/ http://ant.apache.org/ivy/ http://www.xoocode.org/