[ANN] JRuby 1.5.0RC1 Released

The JRuby community is pleased to announce the release of JRuby
1.5.0.RC1

This development cycle has been our longest cycle yet (nearly 5
months), but it also has the most fixes. It also includes many new
notable features (see below). Most of our bug fixes have been more of
what we consider fine-tuning, since we keep getting into smaller
corner-cases of compatibility for individual Ruby methods. In that
sense, we expect if you had a good experience with JRuby 1.4.0 then
1.5.0.RC1 will be a no-brainer upgrade. If you haven’t tried JRuby in
a while with your application, then please give us another try. Odds
are whatever issue you were having before no longer exists! And we
would really like help making sure JRuby 1.5.0 final is a solid
release…so please try and report back with any problems.

1.5.0.RC1 Highlights:

  • New native access framework designed for performance and better FFI
    support
  • Native launcher for *NIX platforms
  • Ant support and Rake-Ant integration
  • Better and better support for Windows
  • Multiple performance improvements for Ruby-to-Java calling,
    improving correctness, memory, and speed.
  • Embedding API improvements based on user input (JSR-223, BSF,
    RedBridge, etc)
  • Software updates: Ruby 1.8.7 standard library update, RubyGems
    1.3.6, RSpec 1.3.0
  • ruby-debug installed by default
  • Many fixes for Rails 3
  • Various improvements to startup time
  • Improved performance for Object#object_id/id
  • Reduced memory use for Java class metadata and faster loading of Java
    classes
  • jar-in-jar support in the classloader
  • The “open4” library now works properly
  • jruby.jit.codeCache=dir to save jitted scripts/methods to disk in a
    sha1-hashed .class file
  • New logic for interface implementation that produces “real” classes
  • jruby.ji.objectProxyCache to turn off OPC for extra performance
  • JRuby::Synchronized module for making a class and its subclasses
    100% synchronized on all calls
  • Miscellaneous perf improvements to core classes and minor
    improvements in the JIT
  • No more ObjectSpace during IRB
  • Cleaned up maven artifacts
  • Windows Installer fixes for x64 and Windows 7 security
  • Over 1250 commits since JRuby 1.4

We always appreciate community contributions. This cycle we’ve had
more help than ever: David C., Stephen B., Daniel Luz, Ian
Dees, Koichiro Ohba,
Hongli L., Hiroshi N., Colin Jones, Takeru Sasaki, Roger P.,
Matjaz Gregoric, Joseph LaFata, Frederic J., Alex Coles, Lars
Westergren


blog: http://blog.enebo.com twitter: tom_enebo
mail: [email protected]


To unsubscribe from this list, please visit:

http://xircles.codehaus.org/manage_email

I hate greeting good news with bad news, but downloading and installing
on
OSX (Darwin Kernel Version 10.2.0: Tue Nov 3 10:37:10 PST 2009;
root:xnu-1486.2.11~1/RELEASE_I386 i386) gives the following error when I
attempt to do anything that touches irb:

/opt/jruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in
require': load error: irb/slex -- java.lang.ArrayIndexOutOfBoundsException: 1 (LoadError) from /opt/jruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:inrequire’
from /opt/jruby/lib/ruby/1.8/irb/ruby-lex.rb:14
from /opt/jruby/lib/ruby/1.8/irb/ruby-lex.rb:31:in require' from /opt/jruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:inrequire’
from /opt/jruby/lib/ruby/1.8/irb.rb:19
from /opt/jruby/lib/ruby/1.8/irb.rb:31:in require' from /opt/jruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:inrequire’
from /opt/jruby/bin/irb:10

Then again, a Release Candidate is where these sorts of problems get
fixed.
:slight_smile:

Ah, forgot to add:

Java™ SE Runtime Environment (build 1.6.0_17-b04-248-10M3025)
Java HotSpot™ 64-Bit Server VM (build 14.3-b01-101, mixed mode)

Hi Don,

it’s quite weird, I did a clean installation from the binary package and
irb
works like a charm. Can you run it with the -v option just to check the
version number is right??

thank you

The MD5 checksum of my download verifies, and:

$ jruby -v

jruby 1.5.0.RC1 (ruby 1.8.7 patchlevel 249) (2010-04-14 0b08bc7) (Java
HotSpot™ Client VM 1.6.0_17) [i386-java]

Ah-ha… found the problem. I had JAVA_OPTS set with the following:

-Djruby.compile.fastest=true

Pulling that out fixed the error.

Great to hear, and I’m glad you got everything working again :slight_smile:

“fastest” mode probably started failing for you because of
“improvements” in how we decide to optimize things. If you are
interested in spending the time, I’d like to know what failed now that
didn’t fail before, so perhaps we can start moving toward making
“fastest” always be a safe option.

On Fri, Apr 16, 2010 at 7:18 AM, Don W. [email protected] wrote:

Ok, so I can try and redeem myself a bit by saying wow, the Java interop is
a lot faster; right off the bat, a 13% improvement through my event-based
I/O system, which makes a lot of calls to NIO.
Thanks for the fantastic work!


To unsubscribe from this list, please visit:

http://xircles.codehaus.org/manage_email

2010/4/16 Charles Oliver N. [email protected]

Great to hear, and I’m glad you got everything working again :slight_smile:

“fastest” mode probably started failing for you because of
“improvements” in how we decide to optimize things. If you are
interested in spending the time, I’d like to know what failed now that
didn’t fail before, so perhaps we can start moving toward making
“fastest” always be a safe option.

I’d love to help; getting ‘fastest’ (or even --fast) working would be
awesome.

Ok, so I can try and redeem myself a bit by saying wow, the Java interop
is
a lot faster; right off the bat, a 13% improvement through my
event-based
I/O system, which makes a lot of calls to NIO.

Thanks for the fantastic work!

Well, first step would be filing a bug for whatever error you got in
1.5 you didn’t get in 1.4, and then we start narrowing it down to a
specific piece of code. Can you start that process?

On Fri, Apr 16, 2010 at 8:58 AM, Don W. [email protected] wrote:

I’d love to help; getting ‘fastest’ (or even --fast) working would be
awesome.


To unsubscribe from this list, please visit:

http://xircles.codehaus.org/manage_email

2010/4/16 Charles Oliver N. [email protected]

Well, first step would be filing a bug for whatever error you got in
1.5 you didn’t get in 1.4, and then we start narrowing it down to a
specific piece of code. Can you start that process?

Sure, now that I’m back on the ground, I’ll run our test suites with the
latest JRuby and start filing bugs.

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs