JRuby 9.0.0.0.rc1/1.7.20.1 发布
腾讯SNG夏日招聘集结号:200个空缺岗位,JAVA、C++、云计算、Android……JRuby 9.0.0.0.rc1 发布,此版本是 JRuby 团队经过多年的努力和大规模重新启动一些 JRuby 子系统的结果。此版本兼容 Ruby 2.2.x,并且同步 C Ruby。
JRuby 9000 主要特性:
[*] Ruby 2.2 兼容
[*] 基于一个传统编译器设计的优化运行时
[*] 新 POSIX 友好 IO 和 Process
[*] 可以完全从 MRI 移植编码/转码逻辑
相比 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
JRuby 9000 初步支持 Truffle 语言实现框架和 Oracle 实验室的 Graal VM。详情请看 JRuby Wiki。
JRuby 9.0.0.0.rc1 issues
[*] #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 exception expected, not> Message:
[*]
#2986 - certain require do not load extension Service>
[*] #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
[*]
#2475 - Truffle: Understand and reduce impact of Truffle on the distribution>
[*] #2036 - Demonstrate pedantic option
[*] #1955 - -X... and -X? options to search for properties.
[*] #1629 - Another unexpected kDO_BLOCK error in parser
同时还发布了 JRuby 1.7.20.1 版本,是 JRuby 1.7.0 以来的第 24 个更新版本,主要是兼容 Ruby 1.9.3。此版本安全更新只是升级 Rubygems 到版本 2.4.8,解决 CVE-2015-1855 漏洞。强烈建议升级!
[*] Homepage: http://www.jruby.org/
[*] Download: http://www.jruby.org/download
JRuby是面向Ruby、基于Java虚拟机(JVM)的一种解释程序,它结合了Ruby语言的简易性和功能强大的JVM的执行机制,包括与Java库全面集成。Rails彻底加快及简化了Web应用的开发,不过它让人觉得不够成熟,特别是在高端企业级功能方面。另一方面,Java平台及其虚拟机、库和应用服务器的速度、稳定性和功能方面却一直在提升,现在已被公认为是开发高端服务器应用的领先平台。不过如果Java平台不与Ruby等新兴语言联系在一起,就有可能落后于流行趋势。
页:
[1]