I think that most of our JRuby 1.5 incompatibilities are superficial. I've seen a couple JIRA issues reported, but nothing too serious. If that were the only thing holding us up, I would vote that we move forward.
Unfortunately, as you pointed out, Windows 7 doesn't seem to like us very much. I'm sure RJB has something to do with it, but it's certainly not the whole story. We're a build system. That means we have to deal with file permissions, locking, etc. All of that nasty stuff that drives people away from Ant; they come to us because we're supposed to deal with it for them! I don't think we're ever going to be able to get away from that. We could probably do more to separate out some of the platform-specific bits though, and that would certainly help. It's never going to be a write once, run anywhere situation though. As for RJB in general, I don't see a way to get away from it without completely dropping support for MRI, and there's still a lot of resistance to that idea (quite a bit of it from myself). I love JRuby as much as the next guy (probably more), but its startup time is just too high for the quick, one-off invocations required by a build tool. With that said, if we went JRuby-only, I think most users (myself included) would get used to it. After all, Buildr under JRuby is still a whole lot faster than Maven 2. :-) It's also worth pointing out that there are certain features (e.g. Growl support on OS X) which only work under MRI and are unlikely to ever function under JRuby (though I do have some ideas on that front). Another option might be to roll our own RJB, something which gives us more flexibility and greater control over that pesky C backend. This is actually something that I've done in the past (though my project wasn't as featureful as RJB), and I can positively say that it's not a trivial undertaking. I'm quite certain that we could do better than RJB, but it would take time and effort, two things which might be better spent on Buildr itself. And given the innate limitations of a bridge-based solution, we may *never* be able to catch up to what JRuby can do right now. I hate RJB too, but I don't see a lot of options. One thing which might be worth pursuing post-1.4 is a streamlined all-in-one JRuby based distribution which doesn't load RubyGems by default (as Charlie suggested). If we could get JRuby-based *perceived* startup time to within 200-300% of what MRI is * now*, I would personally be willing to cut ties with MRI, but that's a really big "if". I do agree with your point about 1.4. Unfortunately, it seems that we have some work to do before we can actually cut a release. Given the problems with 1.3.5 and RubyGems, I think we should push as hard as we can to get that work done sooner rather than later. Daniel On Wed, May 19, 2010 at 8:31 PM, Antoine Toulme <anto...@lunar-ocean.com>wrote: > We still have no 1.4 release. The two RCs look good on most OSes, but > Windows is not willing to cooperate. > > I installed a Windows 7 VM and tried to run the specs. They mostly failed > on > a Rake exception. I can investigate some more. > > I am still not convinced depending on RJB is the future. I would rather > sever the links with it. My experience with Windows 7 showed me how hard it > was to install Buildr on it. > As a side note, I'm working on having rubinius support RJB, and Buildr, for > fun and eventually profit. See my fork on github. > > We also JRuby 1.5 now officially out. We should try to support it > correctly, > which means more work on our end. > > All in all I think releasing 1.4 is now compromised, and we need to address > stability issues related to RJB, as well as support JRuby 1.5 and in > general > become more OS independent to survive on the long run. > > Thanks, > > Antoine >