Forum: JRuby JRuby 9.0.0.0.rc1 Released

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
13313ac2ec7ba7c43b1b952db034ff3b?d=identicon&s=25 Thomas E Enebo (Guest)
on 2015-06-10 22:41
(Received via mailing list)
The JRuby community is pleased to announce the release of JRuby
9.0.0.0.rc1

    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

This release is approaching a level of compatibility and stability where
we
have moved into a release candidate stage. We will address concerns
reported before going final, so now is the time to find any problems…

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 pre2

  -  Updated to Rubygems 2.4.8 addressing CVE-2015-1855
  -  Several parser issues (also fixed in ripper)
  -  Optimized multiple assignment
  -  Several added smaller missing methods for better 2.2 compatibility
  -  A couple of bugs involving nested exceptions/ensures and $!
  -  46 issues fixed for 9.0.0.0.rc1

= 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.rc1

    #3022 - Don't call modify() on RubyStrings so eagerly when freezing
them
    #3019 - Small string values backed by HUGE non-shared ByteList
leading
to large memory usage under 9k
    #3016 - OutOfMemoryError in 9k on code with very large methods
    #3010 - 9k has different scoping behavior than MRI
    #3009 - LocalJumpError: yield called out of block in JRuby
9.0.0.0.pre2
    #3008 - Module#included is private when called with super
    #3007 - splats with non-array like values
    #3006 - add recursion guard in Comparable.
    #3002 - Don't warn on private attribute accessors to match CRuby
    #2993 - Many failures in Sequel tests on [RuntimeError] exception
expected, not Class: <NoMethodError> Message: <"undefined method `[]'
for
nil:NilClass">
    #2986 - certain require do not load extension Service class
    #2984 - Socket.pair is not implemented
    #2983 - Net::HTTP can't ignore http.proxyHost of JVM System Property
    #2976 - Regression: Sequel's literals contain additional quotation
marks under JRuby 9k head but not under pre2
    #2975 - Requiring Sequel triggers false warnings `already
initialized
constant`
    #2974 - NotImplementedError: waitpid unsupported or native support
failed to load on OS X 10.9.5 / OpenJDK 8 / rbenv
    #2959 - JRuby 9k-pre2 throws IOError when reading from $stdin
    #2957 - JRuby 9.0.0.0.pre2 starts hanging while reading from a
socket
    #2939 - Issue #2924
    #2924 - Issue in org.jruby.util.TypeConverter CheckType
    #2920 - Proc from Method breaks encoded parameter list
    #2919 - Add another layer of try/finally around rescue/ensure to
reset
$!.
    #2918 - Method#parameters doesn't annotate required parameters
correctly
    #2916 - Multiple assignment has too much overhead
    #2910 - $! does not get cleared under certain circumstances
    #2905 - Different Regexp behavior from MRI
    #2904 - require 'ripper' yields const already init warnings
    #2899 - Fix for issue 2896 on master : Symbol#inspect with utf8
encode
string
    #2887 - jrubyc failing - TypeError: failed to coerce
org.objectweb.asm.ClassWriter to
org.jruby.org.objectweb.asm.ClassVisitor
    #2877 - Implementation of initialize_copy for BigDecimal (fix #2868)
    #2871 - Enabling tty for powerpc64
    #2869 - NameError different behavior
    #2868 - BigDecimal can not be copied
    #2850 - Fannkuch-redux is less than half as fast in 9k as in 1.7
    #2772 - Make Dir raise Errno::EACCES
    #2756 - Allow File.open and File.new with 4 arguments
    #2744 - Syntax error with file that has OK syntax with MRI 2.2
    #2724 - Socket.getaddrinfo reverse_lookup
    #2616 - Fix power of 0 and 1 issues in Rational
    #2605 - Fix File.read with UTF-16LE
    #2603 - Add support for named captures in StringScanner (fixes
#1067)
    #2563 - RubyArray#flatten! uses `respond_to?` unlike the original
[lotus]
    #2475 - Truffle: Understand and reduce impact of Truffle on the
distribution size
    #2036 - Demonstrate pedantic option
    #1955 - -X... and -X? options to search for properties.
    #1629 - Another unexpected kDO_BLOCK error in parser
C56d14d32eddc6e2bd6364bc2ebbf542?d=identicon&s=25 Andy Joel (f2andy)
on 2015-09-08 10:55
I have just downloaded and installed 9.0.1.0, and I am getting warnings
about jruby.cext.enabled. For example, when checking the version:

>jruby --version
jruby: warning: unknown property jruby.cext.enabled
warning: --2.0 ignored
jruby 9.0.1.0 (2.2.2) 2015-09-02 583f336 Java HotSpot(TM) Client VM
24.60-b09 on 1.7.0_60-b19 +jit [Windows 7-x86]
C56d14d32eddc6e2bd6364bc2ebbf542?d=identicon&s=25 Andy Joel (f2andy)
on 2015-09-08 15:42
I rather more significant problem (forme!) is that the paths seem to
have changed. i am trying to run all my tests, and it is failing to find
test_helper.rb.

My tests have this in them:

require 'test/test_helper'

And test_helper is at <rails_root>/test/test_helper, so if I ran the
tests from <rails_root>, the file was found. Now it seems to be looking
for the files relative to the file the require is in. I may be wrong,
but I think in 1.7 it would look in both places.

ETA: Actually it looks like JRuby 9 is looking for the file relative to
<rails_root>/test, while JRuby 1.7 looked in <rails_root> and the file
with the require.
This topic is locked and can not be replied to.