Charles Nutter has been keeping an updated page of Rails test run results that shows progress towards the goal of a fully-functioning JRuby on Rails. Members of the JRuby team have already demonstrated Rails applications working on JRuby, and even ActiveRecord talking to databases via JDBC. To be clear, what we're talking about here is the effort to get the sizable Rails test suite running at 100% passing.
According to Charles' recent comments to the rails-core mailing list, Rails components ActionPack, ActiveSupport, and ActionMailer are nearly 100%. Other parts of Rails still have some work left:
ActiveRecord is probably 2/3 working (but the failures include tests for Oracle, PgSql, Firebird...), and most of what we'd expect to work in Railties works pretty well. I haven't primed the pump to run ActionWebService tests yet.
The JRuby team has been targeting Rails 1.1.6 support, but will begin testing Rails 1.2 soon:
I wouldn't imagine the compatibility profile will change that much by switching versions; we're mostly talking about pure Ruby here. Note that the use of SQLite in many places in the test causes quite a bit of trouble for JRuby since SQLite support on Java is minimal at best. The ability to swap out SQLite for something equivalently simple (DBI or JDBC with Derby/JavaDB, perhaps?) would make it easy to run those tests.
Charles and the JRuby team are still looking for additional help with this worthy effort:
Of course, if any of you are Java devs and would like to help us get things running, we'd certainly appreciate it. I've debugged and traced through enough Rails code to know that having more expert folks contributing would really help.
Community comments
contributing
by Alex Popescu,
contributing
by Alex Popescu,
Your message is awaiting moderation. Thank you for participating in the discussion.
I would definitely like to hear what are the fields JRuby needs help. I have always thought that oss projects clearly stating their needs will have better chances to find their resources (and I am not talking about the always recommended approach: get involved in the ml, submit bugs, submit patches for the bugs, etc.).
./alex
--
:Architect of InfoQ.com:
.w( the_mindstorm )p.
Co-founder of InfoQ.com