JRuby 9.0.0.0-pre2 发布,Ruby 的 Java 解释器

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

内容简介:JRuby 社区很高兴的宣布 JRuby 9.0.0.0-pre2 发布了:JRuby 9000 是全新的 JRuby 版本,经过多年的开发和大规模重构子系统后推出。

开源中国的 IT 公司开源软件整理计划介绍

JRuby 社区很高兴的宣布 JRuby 9.0.0.0-pre2 发布了:

JRuby 9000 是全新的 JRuby 版本,经过多年的开发和大规模重构子系统后推出。

JRuby 9000 的主要新特性:

  • 兼容 Ruby 2.2

  • 基于传统编译器设计的新的优化后的运行时

  • 新的 POSIX 友好的 IO 和进程

  • 来自 MRI 的完全可移植的编码和转码逻辑

Ruby 2.2 的特性中这个版本 JRuby 尚未实现的还有:

  • Refinements (partially finished) #1062

  • Kernel#spawn close-on-exec support

  • ObjectSpace::WeakMap#each and Enumerable inclusion

  • Thread#handle_interrupt is not yet fully functional

与 Pre1 版本比较,值得关注的变化是:

  • Startup time has improved but is a tiny bit slower than 1.7.x.

  • Memory usage has improved but still a ways to go.

  • Straight-line performance has improved since pre1

  • Windows support improved, but still needs further work and testing

  • Many keyword arguments problems fixed

  • 88 issues fixed for 9.0.0.0.pre2

Truffle

JRuby 9000 包含一个开发中的支持 Truffle 语言实现框架和来自 Oracle 实验室的 Graal VM。详情请看 JRuby Wiki .

Github Issues resolved for 9.0.0.0.pre2

  • #2864 - Prepend breaks module "implementer" search

  • #2847 - JRuby not using UTF-8 for source files

  • #2846 - Psych dependency is installing non-JRuby version

  • #2842 - Hash#each_pair should be a true alias of Hash#each

  • #2840 - jrubyc blows with NPE

  • #2833 - Bad nonlocal return with re-wrapped define_method block

  • #2797 - Support respond_to_missing? in respondsTo() lookups

  • #2788 - Autoload broken by path canonicalization

  • #2787 - Returns nil instead of regex match group inside conditional

  • #2784 - rindex() fails on strings read from binary files

  • #2777 - Undefined group option during parse of mri/test_regexp.rb

  • #2776 - IR improperly masks errors in defined-guarded conditional

  • #2771 - unknown type of %string

  • #2767 - Open3.popen3 treats string command differently than MRI

  • #2766 - Open3.capture2e fails with "wrong exec option"

  • #2764 - Encoding::Converter#primitive_convert has trailing null byte

  • #2752 - JRuby doesn't define Process::Tms like MRI does

  • #2751 - Make RUBY_ENGINE_VERSION as companion to RUBY_ENGINE

  • #2736 - early return in each'd enumerator is jumping out of each and not method

  • #2726 - how do I install with Jars? Re: "deprecated. use instead jars/installer" message

  • #2716 - rb_cmpint difference from MRI

  • #2712 - Micro bench is nearly 2x slower with JIT than interp

  • #2692 - Fix for issue 2591 on master : double-quoted UTF8 hash key encoding

  • #2654 - Truffle - Compile Error until when break in case statement

  • #2652 - Truffle - Regex Parsing Error

  • #2637 - Produce a warning on private attribute accessors

  • #2636 - Fix Bignum's bitwise operations

  • #2635 - Object.const_get behaves differently from other implementations

  • #2629 - Mixed-mode execution exposes an unusual bug

  • #2627 - $stdin.tty? reports wrong value on JRuby-9.0.0.0-pre1

  • #2623 - error with bin/jruby -S gem install asd

  • #2615 - Open3 fails with ArrayStoreException after ~50 executions

  • #2598 - Unknown error in child-process gem when trying to open phantomjs browser in webdriver when running on jruby

  • #2593 - Fix IO#write frozen string issue in textmode

  • #2591 - double-quoted UTF8 hash key has the wrong encoding

  • #2589 - Fixed the errors with RubySpec

  • #2587 - simplecov triggers load error when running coverage on jruby-9.0.0.0.pre1

  • #2585 - JavaSupport refactoring API (byte-code) incompatibility with extensions

  • #2584 - Fixed arity issue with RubyMethod

  • #2583 - Make filepaths with null byte fail

  • #2581 - Error handling converting UTF-32 to UTF-8 is broken [9k] [lotus]

  • #2580 - Different Encoding behavior from all other Rubies

  • #2579 - Fix for issue 2182 on master : Struct#inspect with utf8 encode string member

  • #2578 - Binding#receiver is not implemented [9k] [lotus]

  • #2576 - Fix the bug with size with each_slice without block

  • #2574 - Parallel value assignment broken in IR builder (multi-value literals, calls, attr-assign, etc.)

  • #2570 - ClassCastException requiring minitest with JRuby 9000

  • #2569 - Fix required arguments for File.chown

  • #2568 - Exit iterator when `RubyHash#any?` short-circuits

  • #2562 - Skip block-to-proc conversion for explicit block syntax when possible

  • #2560 - Fix uninitialized usage of File::Stat

  • #2553 - Mismatch on Enumerator#size result between JRuby and MRI

  • #2547 - Dir.foreach does not allow encoding

  • #2541 - JRuby+Truffle: Keyword Arguments - "illegal recursive call"

  • #2540 - Fixed arity require in case of required keyword arguments

  • #2537 - Fix for issue 2524 on master: [BigDecimal] Loss of precision with different execution order

  • #2525 - undefined method `invoke_with_build_args' for nil:NilClass on Windows 7

  • #2524 - [bigdecimal] Loss of precision with different execution order

  • #2523 - Modified the make_wstr method so that it appends a null character.

  • #2522 - Implement pack & unpacking ipv6 address in sockaddr

  • #2521 - Require order appears to impact JRuby extensions [9k]

  • #2518 - Keyword arguments incompatibility

  • #2514 - Getting "BUG: $! and exception are not matching up" in RSpec in 9K

  • #2512 - keyword arguments incompatibilities

  • #2511 - Keyword method parameters cannot take a frozen hash

  • #2505 - IO.popen cannot run 'date' on Windows 7

  • #2500 - gem install failure on Windows

  • #2494 - Open3 fails with varying signals on 9.0.0.0.pre1

  • #2493 - Performance issue with invokedynamic + Rack + URI

  • #2492 - Implemented support for keyword and keywordrest proc /lambda parameters

  • #2491 - Minitest rails not working on 9000

  • #2489 - Proc.parameters return an empty array

  • #2486 - Implemented Enumerator#feed method

  • #2474 - truffle artifacts are not on maven central and we have a release repo in jruby-parent.pom

  • #2466 - Package Truffle stdlib files into tarball

  • #2388 - IO#ready? returns incorrect results

  • #2357 - NULL handling inconsistent with Ruby

  • #2312 - Encoding.compatible? affected by call order

  • #2210 - Fix for issue 1069 and 1390 on master: improve handling of non ascii character after backslash

  • #2185 - Bundle fails with Java::JavaLang::StackOverflowError with git-hosted gems

  • #2165 - Truffle: Kill all other threads when the main thread exits

  • #2163 - StringLiteral consumers may not be CR-aware

  • #2137 - Socket.getifaddrs returns incorrect interface list

  • #2033 - Problem with super not passing params with IR

  • #2015 - Method keyword arguments are destructive

  • #1982 - AIOOBE in ThreadContext#postYield

  • #1395 - Pre-compiled methods do not have AST available for re-compilation

  • #779 - Output unreliable from spawned processes


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

查看所有标签

猜你喜欢:

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

Learning JavaScript

Learning JavaScript

Shelley Powers / Oreilly & Associates Inc / 2006-10-17 / $29.99

As web browsers have become more capable and standards compliant, JavaScript has grown in prominence. JavaScript lets designers add sparkle and life to web pages, while more complex JavaScript has led......一起来看看 《Learning JavaScript》 这本书的介绍吧!

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具