> 1. Is it possible to use Buildr without using any of its DSLs? The
> primary complaint I've heard from folks interested in Buildr is that
> it doesn't look anything like Rake, when they want to "just use Rake".
> But if all the key bits are available as Rake tasks, that shouldn't
> matter.
>

As with any well-designed internal DSL, you can always get around the syntax
if you really feel like it.  I don't think I've ever actually tried to do
that, but it should be possible.  The one thing which might be a concern is
the way in which Project fiddles with Rake's internal state to get things
like local_task(s) and such.  I don't think is too bad though, and certainly
could be monkey-patched out (or maybe even inherited out) without too much
pain.


> 2. What's the reason for MRI/RJB support at this point? Daniel is
> right...the full two-way Ant/Rake integration does not support RJB,
> nor do we on the JRuby team have time to try to support RJB...but I'm
> wondering what benefit RJB actually gives you? In this case, it's very
> likely to hold you back.
>

I can second Ittay's point about MRI startup being an important factor.
There are also secondary things.  For example, Buildr has Growl support on
Mac, but it only works under MRI (since we need to directly call the
Objective-C framework).  Also, we have had problems in the past with JRuby's
Kernel#system method (which is based on Runtime#exec and not POSIX
`system`).  We're pretty confident that we're past those issues now (by
using JFFI to bridge POSIX `system`), but it's still worth mentioning.

Just on a personal note, I prefer to *use* Buildr on MRI, but I vastly
prefer to *develop* Buildr on JRuby.  It would be nice if we could go
JRuby-only, but I think startup time alone is probably a killer.  We're
planning on exploiting the pre-compiler to generate a Buildr JAR for our
one-click-buildr under JRuby 1.5, how much of an impact is this going to
have on startup?


> 3. The next obvious step for us in JRuby is to get better Maven/Ivy
> integration, both building upon the Ant/Rake integration and for
> RubyGems. But we're Maven neophytes, so ideally we'd be able to just
> reuse or share parts of Buildr to do all that. We'd rather not have
> JRuby ship a complete set of build tools that are totally independent
> of Buildr, since that would just fragment and confuse.
>

What aspects of Maven/Ivy specifically are you looking to cherry pick?  If
you're just looking for dependency management, the Artifact mechanism is
reasonably isolated from the rest of the core and fits like a glove with
Rake tasks (Artifacts are just file tasks).


> Anyway, I'll try to monitor this list and hopefully we can work
> together more closely in the future.
>

Looking forward to it!

Daniel

Reply via email to