[ANN] JRuby 9.0.0.0 Released

The JRuby community is pleased to announce the release of JRuby 9.0.0.0

    Homepage: http://www.jruby.org/
    Download: http://www.jruby.org/download

JRuby 9000 is the new version of JRuby, representing years of effort and
large-scale reboots of several JRuby subsystems. It is expected to be
compatible with Ruby 2.2.x and stay in sync with C Ruby.

Major features of JRuby 9000:

   - Ruby 2.2 compatibility
   - A new optimizing runtime based on a traditional compiler design
   - New POSIX-friendly IO and Process
   - Fully ported encoding/transcoding logic from MRI

Read our blog entry on JRuby 9000 for more information.

We finally made it to 9.0.0.0. As the flood gates open and we get some
people trying this new major version for the first time we expect to get a
stream of issue reports. JRuby 9k should be stable and production ready but
real world users hitting it for the first time generally uncovers new
issues. Because of this, we expect to fairly quickly have followup point
releases.

If you do find issues then report them on using our issue tracker at
http://bugs.jruby.org. We also encourage users to join our IRC channel
(#jruby on Freenode) and mailing lists. You may also follow @jruby on
Twitter for updates.

It is important to point out that when we do put out JRuby 9.0.0.0 that
this is only the starting point. Our new internals gives us lots of
potential to keep pushing the bar higher on JRuby performance.
Notable updates since rc2

    Two reverts on classloading to restore behavior to be like JRuby 1.7.x
    Non-lambda return passing through a lambda could return improperly
    Fixed two visibility issues on methods (#3123, #3135)
    39 issues fixed for 9.0.0.0 (note: some issues in list predate rc2
release)

Truffle

JRuby 9000 includes an preliminary version of support for the Truffle
language implementation framework and Graal VM from Oracle Labs. In future
releases, Truffle will provide an extremely high performance and compatible
backend for JRuby. The Truffle backend supports almost all Ruby language
features and the majority of the core library, and is able to run simple
gems and web frameworks such as Sinatra. It has no support for RubyGems,
Rails or any database drivers, does not work on Windows, and is not ready
to be tested with applications at this stage. More information on Truffle
and Graal can be found in the JRuby Wiki.
Github Issues resolved for 9.0.0.0

    #3158 - timeout method not calling Timeout::timeout
    #3152 - Since JRuby-9.0.0.0 changes to classloaders are failing
ruby-processing
    #3151 - http.rb gem specs fail on JRuby 9.0.0.0.pre2 and greater
    #3149 - Issue requiring 'yaml' on SwingWorker on jruby 9.0.0.0.rc2
    #3143 - #each's return takes precendence over inner block's return with
a lambda
    #3139 - Gson gem fails to parse JSON on jruby9.0.0.0.rc1
    #3134 - jruby-9.0.0.0.rc2/lib/ruby/maven-home/bin/mvn not executable
    #3129 - Included Timeout crashes when module method version of timeout
used
    #3126 - load current directory file
    #3125 - 9.0.0.0.rc2 popen3 doesn't work on Windows
    #3123 - private method error in jruby-9.0.0.0.rc1
    #3110 - Unable to load Sybase driver in rc1, works in pre2
    #3062 - Unable to java_import a class on jruby-9.0.0.0.rc1
    #3059 - Windows bin/*.bat files missing in 9.0.0.0.rc1
    #3034 - jruby: warning: unknown property jruby.export
    #2964 - In windows ScriptingContainerTest fails
    #2950 - not implemented error Raspberry pi 2
    #2762 - IO.copy_stream doesn't rewind the destination
    #2718 - JVM6 JIT caches duplicate values multiple times per compile unit
    #2713 - Hash#inspect differs from MRI Ruby 2.2.1; This problem occurs
if Hash has double-quoted UTF8 symbol key.
    #2684 - JRuby automatically reaps child pids
    #2559 - 9.0.0.0-pre1: NoSuchMethodError in pg_jruby gem
    #2499 - jrubyc command doesn't work on 9.0.0.0-pre1
    #2497 - So Rails Rake Tasks Don't work? Preview 1 - 9.0.0.0
    #2483 - Long generated filenames in Truffle code prevent compilation on
some systems
    #2480 - Keyword arguments arity issue
    #2476 - truffle modular
    #2462 - Removed unused var
    #2416 - Remove JumpException, Next, Redo, etc. exceptions from old
runtime
    #2341 - allow for negative arity when calling curried proc
    #2328 - [Truffle] New implementation of non-small hashes
    #2322 - change name of files which pass rspec regression test on master
    #2288 - security model compilation fix
    #2287 - Fix #2137 Socket.getifaddrs returns incorrect interface list...
    #2253 - Fix GH-1960 rspec file
    #2252 - Fix GH-1726 on master
    #2235 - Make AOT work on 9k
    #2129 - Block variable shadowing and local_variables not matching up
right
    #1111 - [2.1] Comparable#== needs a recursion guard for missing <=>

···

--
blog: http://blog.enebo.com twitter: tom_enebo
mail: tom.enebo@gmail.com

Congrats! Excited to give the new version a spin :slight_smile:

For those wondering where that blog post might be, it's right here:
http://blog.jruby.org/2015/07/jruby_9000/

Cheers,
Tobi

···

On 07/22/2015 06:02 PM, Thomas E Enebo wrote:

The JRuby community is pleased to announce the release of JRuby 9.0.0.0

    Homepage: http://www.jruby.org/
    Download: Downloads — JRuby.org

JRuby 9000 is the new version of JRuby, representing years of effort
and large-scale reboots of several JRuby subsystems. It is expected to
be compatible with Ruby 2.2.x and stay in sync with C Ruby.

Major features of JRuby 9000:

   - Ruby 2.2 compatibility
   - A new optimizing runtime based on a traditional compiler design
   - New POSIX-friendly IO and Process
   - Fully ported encoding/transcoding logic from MRI

Read our blog entry on JRuby 9000 for more information.

We finally made it to 9.0.0.0. As the flood gates open and we get some
people trying this new major version for the first time we expect to
get a stream of issue reports. JRuby 9k should be stable and
production ready but real world users hitting it for the first time
generally uncovers new issues. Because of this, we expect to fairly
quickly have followup point releases.

If you do find issues then report them on using our issue tracker at
http://bugs.jruby.org. We also encourage users to join our IRC channel
(#jruby on Freenode) and mailing lists. You may also follow @jruby on
Twitter for updates.

It is important to point out that when we do put out JRuby 9.0.0.0
that this is only the starting point. Our new internals gives us lots
of potential to keep pushing the bar higher on JRuby performance.
Notable updates since rc2

    Two reverts on classloading to restore behavior to be like JRuby 1.7.x
    Non-lambda return passing through a lambda could return improperly
    Fixed two visibility issues on methods (#3123, #3135)
    39 issues fixed for 9.0.0.0 (note: some issues in list predate rc2
release)

Truffle

JRuby 9000 includes an preliminary version of support for the Truffle
language implementation framework and Graal VM from Oracle Labs. In
future releases, Truffle will provide an extremely high performance
and compatible backend for JRuby. The Truffle backend supports almost
all Ruby language features and the majority of the core library, and
is able to run simple gems and web frameworks such as Sinatra. It has
no support for RubyGems, Rails or any database drivers, does not work
on Windows, and is not ready to be tested with applications at this
stage. More information on Truffle and Graal can be found in the JRuby
Wiki.
Github Issues resolved for 9.0.0.0

    #3158 - timeout method not calling Timeout::timeout
    #3152 - Since JRuby-9.0.0.0 changes to classloaders are failing
ruby-processing
    #3151 - http.rb gem specs fail on JRuby 9.0.0.0.pre2 and greater
    #3149 - Issue requiring 'yaml' on SwingWorker on jruby 9.0.0.0.rc2
    #3143 - #each's return takes precendence over inner block's return
with a lambda
    #3139 - Gson gem fails to parse JSON on jruby9.0.0.0.rc1
    #3134 - jruby-9.0.0.0.rc2/lib/ruby/maven-home/bin/mvn not executable
    #3129 - Included Timeout crashes when module method version of
timeout used
    #3126 - load current directory file
    #3125 - 9.0.0.0.rc2 popen3 doesn't work on Windows
    #3123 - private method error in jruby-9.0.0.0.rc1
    #3110 - Unable to load Sybase driver in rc1, works in pre2
    #3062 - Unable to java_import a class on jruby-9.0.0.0.rc1
    #3059 - Windows bin/*.bat files missing in 9.0.0.0.rc1
    #3034 - jruby: warning: unknown property jruby.export
    #2964 - In windows ScriptingContainerTest fails
    #2950 - not implemented error Raspberry pi 2
    #2762 - IO.copy_stream doesn't rewind the destination
    #2718 - JVM6 JIT caches duplicate values multiple times per
compile unit
    #2713 - Hash#inspect differs from MRI Ruby 2.2.1; This problem
occurs if Hash has double-quoted UTF8 symbol key.
    #2684 - JRuby automatically reaps child pids
    #2559 - 9.0.0.0-pre1: NoSuchMethodError in pg_jruby gem
    #2499 - jrubyc command doesn't work on 9.0.0.0-pre1
    #2497 - So Rails Rake Tasks Don't work? Preview 1 - 9.0.0.0
    #2483 - Long generated filenames in Truffle code prevent
compilation on some systems
    #2480 - Keyword arguments arity issue
    #2476 - truffle modular
    #2462 - Removed unused var
    #2416 - Remove JumpException, Next, Redo, etc. exceptions from old
runtime
    #2341 - allow for negative arity when calling curried proc
    #2328 - [Truffle] New implementation of non-small hashes
    #2322 - change name of files which pass rspec regression test on
master
    #2288 - security model compilation fix
    #2287 - Fix #2137 Socket.getifaddrs returns incorrect interface
list...
    #2253 - Fix GH-1960 rspec file
    #2252 - Fix GH-1726 on master
    #2235 - Make AOT work on 9k
    #2129 - Block variable shadowing and local_variables not matching
up right
    #1111 - [2.1] Comparable#== needs a recursion guard for missing <=>

--
blog: http://blog.enebo.com twitter: tom_enebo
mail: tom.enebo@gmail.com <mailto:tom.enebo@gmail.com>

thank you for all the great work.

*​Best regards*,​

Ferdinand Rosario A
​Mobile : +91 8939939022
Twitter : @Ferdy_Rosario
Skype : ferdinand.rosario
LinkedIn: https://www.linkedin.com/in/ferdinandrosario
GitHub : ferdinandrosario (Ferdy) · GitHub

···

On Wed, Jul 22, 2015 at 9:42 PM, Tobias Pfeiffer <pragtob@gmail.com> wrote:

Congrats! Excited to give the new version a spin :slight_smile:

For those wondering where that blog post might be, it's right here:
http://blog.jruby.org/2015/07/jruby_9000/

Cheers,
Tobi

On 07/22/2015 06:02 PM, Thomas E Enebo wrote:

The JRuby community is pleased to announce the release of JRuby 9.0.0.0

    Homepage: http://www.jruby.org/
    Download: Downloads — JRuby.org

JRuby 9000 is the new version of JRuby, representing years of effort and
large-scale reboots of several JRuby subsystems. It is expected to be
compatible with Ruby 2.2.x and stay in sync with C Ruby.

Major features of JRuby 9000:

   - Ruby 2.2 compatibility
   - A new optimizing runtime based on a traditional compiler design
   - New POSIX-friendly IO and Process
   - Fully ported encoding/transcoding logic from MRI

Read our blog entry on JRuby 9000 for more information.

We finally made it to 9.0.0.0. As the flood gates open and we get some
people trying this new major version for the first time we expect to get a
stream of issue reports. JRuby 9k should be stable and production ready but
real world users hitting it for the first time generally uncovers new
issues. Because of this, we expect to fairly quickly have followup point
releases.

If you do find issues then report them on using our issue tracker at
http://bugs.jruby.org. We also encourage users to join our IRC channel
(#jruby on Freenode) and mailing lists. You may also follow @jruby on
Twitter for updates.

It is important to point out that when we do put out JRuby 9.0.0.0 that
this is only the starting point. Our new internals gives us lots of
potential to keep pushing the bar higher on JRuby performance.
Notable updates since rc2

    Two reverts on classloading to restore behavior to be like JRuby 1.7.x
    Non-lambda return passing through a lambda could return improperly
    Fixed two visibility issues on methods (#3123, #3135)
    39 issues fixed for 9.0.0.0 (note: some issues in list predate rc2
release)

Truffle

JRuby 9000 includes an preliminary version of support for the Truffle
language implementation framework and Graal VM from Oracle Labs. In future
releases, Truffle will provide an extremely high performance and compatible
backend for JRuby. The Truffle backend supports almost all Ruby language
features and the majority of the core library, and is able to run simple
gems and web frameworks such as Sinatra. It has no support for RubyGems,
Rails or any database drivers, does not work on Windows, and is not ready
to be tested with applications at this stage. More information on Truffle
and Graal can be found in the JRuby Wiki.
Github Issues resolved for 9.0.0.0

    #3158 - timeout method not calling Timeout::timeout
    #3152 - Since JRuby-9.0.0.0 changes to classloaders are failing
ruby-processing
    #3151 - http.rb gem specs fail on JRuby 9.0.0.0.pre2 and greater
    #3149 - Issue requiring 'yaml' on SwingWorker on jruby 9.0.0.0.rc2
    #3143 - #each's return takes precendence over inner block's return
with a lambda
    #3139 - Gson gem fails to parse JSON on jruby9.0.0.0.rc1
    #3134 - jruby-9.0.0.0.rc2/lib/ruby/maven-home/bin/mvn not executable
    #3129 - Included Timeout crashes when module method version of timeout
used
    #3126 - load current directory file
    #3125 - 9.0.0.0.rc2 popen3 doesn't work on Windows
    #3123 - private method error in jruby-9.0.0.0.rc1
    #3110 - Unable to load Sybase driver in rc1, works in pre2
    #3062 - Unable to java_import a class on jruby-9.0.0.0.rc1
    #3059 - Windows bin/*.bat files missing in 9.0.0.0.rc1
    #3034 - jruby: warning: unknown property jruby.export
    #2964 - In windows ScriptingContainerTest fails
    #2950 - not implemented error Raspberry pi 2
    #2762 - IO.copy_stream doesn't rewind the destination
    #2718 - JVM6 JIT caches duplicate values multiple times per compile
unit
    #2713 - Hash#inspect differs from MRI Ruby 2.2.1; This problem occurs
if Hash has double-quoted UTF8 symbol key.
    #2684 - JRuby automatically reaps child pids
    #2559 - 9.0.0.0-pre1: NoSuchMethodError in pg_jruby gem
    #2499 - jrubyc command doesn't work on 9.0.0.0-pre1
    #2497 - So Rails Rake Tasks Don't work? Preview 1 - 9.0.0.0
    #2483 - Long generated filenames in Truffle code prevent compilation
on some systems
    #2480 - Keyword arguments arity issue
    #2476 - truffle modular
    #2462 - Removed unused var
    #2416 - Remove JumpException, Next, Redo, etc. exceptions from old
runtime
    #2341 - allow for negative arity when calling curried proc
    #2328 - [Truffle] New implementation of non-small hashes
    #2322 - change name of files which pass rspec regression test on master
    #2288 - security model compilation fix
    #2287 - Fix #2137 Socket.getifaddrs returns incorrect interface list...
    #2253 - Fix GH-1960 rspec file
    #2252 - Fix GH-1726 on master
    #2235 - Make AOT work on 9k
    #2129 - Block variable shadowing and local_variables not matching up
right
    #1111 - [2.1] Comparable#== needs a recursion guard for missing <=>

--
blog: http://blog.enebo.com twitter: tom_enebo
mail: tom.enebo@gmail.com