JRuby 社区很高兴地宣布的 JRuby 9.0.1.0 发布。JRuby 9000 是最新的主流版本,兼容 Ruby 2.2.x,而 JRuby 9.0.1.0 是首个维护版本。
与 9.0.0.0 版本比较,该版本改进包括:
Reduced memory usage since 9.0.0.0 by 13%
Improved support for refinements; 70% of CRuby tests passing
jruby-openssl updated to version 0.9.11
psych updated to version 2.0.15
44 issues fixed for 9.0.1.0
完整 issue 列表:
#3288 - 9K seems to be handling all jruby.xxx properties
#3284 - Spec improvements
#3283 - Not getting SIGCHLD when a child process dies
#3277 - Spec improvements
#3276 - Class with prepended module is its own superclass
#3271 - bigdecimal & bigmath
#3265 - Updates for RSpec 3
#3251 - jruby: warning: unknown property jruby.{memory,stack}.max
#3249 - Socket.send freezes string unexpectedly (RuntimeError: can't modify frozen string)
#3248 - File.fnmatch doesn't match german vowels
#3245 - Parser fails on `assert_equal(true, (not ()))` expresion
#3238 - Fix Digest bubblebabble incorrect output on empty string
#3237 - $! gets unset by rescue, even when the rescue doesn't catch the error
#3233 - Rails.root set to "uri:classloader:/" for new Rails app with JRuby 9.0.0.0
#3228 - Fix an embedded runtime memory leak in Java7ClassValue
#3227 - Array#uniq behavior differs from MRI with BasicObject members
#3224 - removed unused FileIO class from persistence.util
#3221 - big decimal parser
#3220 - RubyInstanceConfig#setupEnvironment throws AccessControlException on Windows
#3218 - add to_h to the class used for ENV
#3211 - bignum speedup
#3200 - Fixing RangeError with code from 1.7 branch
#3198 - licensing information out of date?
#3189 - 9k fail ftp on Windows
#3188 - jruby-1_7 merge failures on master
#3187 - Add MRI test for proc visibility
#3175 - 9k fail to compile ruby code of using multibyte char on Windows
#3174 - ensure clause is executed before begin clause ends ?
#3173 - Can't reference the proc itself in a proc
#3165 - Fix RubyRange#initialize_copy mistakenly erroring on #dup'ing a range
#3163 - dup on Range regression
#3162 - Different results for `to_h` and `to_hash` on `ENV`
#3118 - Jruby 9000 RC1 throws Java::JavaLang::ClassCastException: org.jruby.RubyBignum cannot be cast to org.jruby.RubyFixnum
#2956 - bubblebabble is wrong for empty strings
#2901 - Psych fails with MBC strings in ASCII-8BIT
#2148 - BigMath.log fails MRI 2.2 tests
#2131 - Divergent behavior in MRI vs JRuby wrt Class::undef
#1968 - JRuby Yaml implementation (psych) fails dumping "-."
#1907 - Frozen
#1900 - "invalid byte sequence in UTF-8" after String#encode!; behavior differs from MRI (JRuby-1.7.13)
#1877 - Array#delete_if - no size update
#1770 - Wrong julian day for DateTime with a negative rational offset
#1328 - Encoding of symbol literals does not respect the encoding of the source file
#378 - Need ability to set Socket.setReuseAddress() in RubyTCPSocket.java
JRuby是面向Ruby、基于Java虚拟机(JVM)的一种解释程序,它结合了Ruby语言的简易性和功能强大的JVM的执行机制,包括与Java库 全面集成。Rails彻底加快及简化了Web应用的开发,不过它让人觉得不够成熟,特别是在高端企业级功能方面。另一方面,Java平台及其虚拟机、库和 应用服务器的速度、稳定性和功能方面却一直在提升,现在已被公认为是开发高端服务器应用的领先平台。不过如果Java平台不与Ruby等新兴语言联系在一 起,就有可能落后于流行趋势。