内容简介:JRuby 9.0.0.0-pre2 发布,Ruby 的 Java 解释器
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
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。