JRuby 9.0.0.0.rc1/1.7.20.1 发布

栏目: Ruby · 发布时间: 6年前

内容简介:JRuby 9.0.0.0.rc1 发布,此版本是 JRuby 团队经过多年的努力和大规模重新启动一些 JRuby 子系统的结果。此版本兼容 Ruby 2.2.x,并且同步 C Ruby。JRuby 9000 主要特性:

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 [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

同时还发布了 JRuby 1.7.20.1 版本,是 JRuby 1.7.0 以来的第 24 个更新版本,主要是兼容 Ruby 1.9.3。此版本安全更新只是升级 Rubygems 到版本 2.4.8,解决 CVE-2015-1855 漏洞。强烈建议升级!

JRuby是面向Ruby、基于 Java 虚拟机(JVM)的一种解释程序,它结合了Ruby语言的简易性和功能强大的JVM的执行机制,包括与Java库 全面集成。Rails彻底加快及简化了Web应用的开发,不过它让人觉得不够成熟,特别是在高端企业级功能方面。另一方面,Java平台及其虚拟机、库和 应用服务器的速度、稳定性和功能方面却一直在提升,现在已被公认为是开发高端服务器应用的领先平台。不过如果Java平台不与Ruby等新兴语言联系在一 起,就有可能落后于流行趋势。

文章转载自: 开源中国社区 [ http://www.oschina.net

]

本文标题:JRuby 9.0.0.0.rc1/1.7.20.1 发布

本文地址:

http://www.oschina.net/news/63266/jruby-9-0-rc1


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

《Hello Ruby:儿童编程大冒险》(平装)

《Hello Ruby:儿童编程大冒险》(平装)

(芬兰)琳达·刘卡斯 / 窝牛妈 / 浙江人民美术出版社 / 2018

快来认识Ruby——一个想象力丰富,喜欢解决难题的女生。Ruby认识了一群新朋友:聪明的雪豹、友好的狐狸、忙碌的机器人等等。这本书以讲故事的方式向孩子们介绍了基础的计算思维,比如拆分问题,制定分步计划,寻找规律,打破思维定势等等;之后,通过一系列鼓励探索和创造的练习和活动,孩子们对这些关乎编程核心问题的基本概念有了进一步的理解。一起来看看 《《Hello Ruby:儿童编程大冒险》(平装)》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具