皇上,还记得我吗?我就是1999年那个Linux伊甸园啊-----24小时滚动更新开源资讯,全年无休!

JRuby 9.4.6.0 发布

JRuby 9.4.6.0 发布

JRuby 社区很高兴地宣布 JRuby 9.4.6.0 正式发布。

JRuby 9.4.x 的目标是兼容 Ruby 3.1。

感谢此次发布的贡献者,是你们让 JRuby 继续前进!@evaniainbrooks, @ahorek, @kares, @most00, @ntkme, @sk757a

Ruby 兼容性
对 Ruby 代码的新 Prism 解析器的支持已经合并进来。博文即将发布。#8103
IO#fcntl 在设置 O_NONBLOCK 时存在反向逻辑(设置后会清除值等)。[#8081], [#8090]
许多语言和核心类兼容性修正,请参见问题列表。
警告应与 CRuby 的冗长程度相匹配,在未启用冗长的情况下,许多不需要的警告已被正确省略。#7183, #8071
标准库
json 已更新至 2.7.1。#7752, #7954
io-console 更新至 0.7.2。该版本通过使用 stty 进行控制台操作,修复了苹果 M 系列上的 IRB 问题。#8012
nkf 现在由 0.2.0 版 gem 支持。#8077
strscan 已更新至 3.1.0。#8074, [#8086]
reline 已更新至 0.4.2 #8102
jruby-openssl 已更新至 0.14.3 #8107
JVM 集成
Ruby 符号可以作为接收 Java 字符串的 JVM 方法的参数。#8015, #8057
从 Java 17 开始,包私有方法将不再自动绑定,即使这些方法是可见的。#8061, #8093
本地集成
更新了用于本地调用的子系统,以支持 RHEL/CentOS 7 和 Java 9+ Cleaner API。[#8104]
性能
改进了关键字参数处理的性能。#8021
JRuby的JIT编译器现在支持模式匹配。#8026, #8027

77 已为 9.4.6.0 解决的 Github 问题

#4808 Rework global variables, caching to eliminate race conditions

#6430 Using <internal: for core library methods defined in Ruby

#7151 File.identical? should use stat to compare files

#7183 Various alias forms warn on redefine when they should not

#7523 Define IO::READABLE, WRITABLE, PRIORITY for IO#wait

#7695 jffi ships with binaries requiring glibc 2.27

#7721 jirb on win10 : The signal TSTP is in use by the JVM and will not work correctly on this platform

#7729 Sock fixes

#7752 Update JSON gem to not use Bigdecimal.new

#7759 irb on CentOS7, JRuby 9.4.2.0 , and JDK 1.8

#7760 Failure to load FFI gives an outdated message

#7845 Including a module again after prepending another module to it isn’t idempotent

#7862 Ruby 2.7 conformance: ObjectSpace::WeakMap is broken for FixNum keys

#7939 Yaml exception when trying to install rdoc-data

#7954 Update json for BigDecimal.new fix

#7958 Prepend internal marker to internal sources

#7974 [ji] support java_alias with constructor

#7981 Less instrs

#7996 Add %aA for printf and friends

#8001 Fix various specs

#8002 Time spec fixes

#8003 Fix issues in global variable thread-safety

#8005 New MRI test failures on less common architectures

#8007 Fix intermittent fails in CI

#8009 Expand WeakMap to allow floats and fixnums

#8010 Kernel#send does not strip off empty keywords hashes before calling eventual method

#8011 Fixes #8010. Kernel#send + empty kwargs hash error

#8012 Update io-console

#8013 Tag sweep2

#8014 Fixes language specs involving blocks/yield

#8015 Java method lookup for arity-1 method with inexact argument fails in the presence of arity-2 method with same name

#8016 Lang specs

#8021 Reduce overhead of kwargs for no-arg methods and blocks

#8022 Remove implicit prologue state to methods/blocks if that state is unused

#8026 Full JIT support for pattern matching

#8027 Pattern jit

#8031 Reuse thread-local jump exceptions to avoid construction

#8033 Implement Exception.to_tty?

#8039 Implement Exception.to_tty?

#8040 Match Exception#full_message with MRI 3.2

#8045 Try to find class resource to avoid exception

#8046 Socket::IFF_* are missing

#8047 add socket flags for zeroconf

#8048 Try and make UDP look a little more like MRI (and hopefully make it more functional)

#8049 Fix String#unpack from using capacity() and causing wrong error

#8050 Various cleanups for String operations

#8052 ignore codes logic was not doing anything in unpack

#8053 More arity splitting

#8054 A bit confusing error: “FrozenError: can’t modify frozen NilClass”

#8055 override getDelegate in PrependedModule to return origin

#8056 Add hex exponential notation for Kernel::Float

#8057 recognize RubySymbol as assignable to String

#8060 Inspect frozen object for error

#8061 enumerable.map raise wrong number of arguments only when Ruby script is executed from Gradle using JDK 21

#8063 Fix typos in cli options

#8070 Attribute definition on singleton should call singleton_method_added

#8071 Update some warnings to deprecated

#8072 Added Module#refinements and Refinement#refined_class

#8074 Update strscan to fix improper sharing

#8077 Switch to default gem for nkf

#8080 [fix] avoid Class#subclasses deprecation with class.rb ext

#8083 (master) rdoc test suite failing with Java::JavaLang::ArrayIndexOutOfBoundsException

#8088 Update strscan to 3.1.0 for OOB fix

#8091 Ripper is not returning unary minus with proper symbol

#8093 Rework visibility checks for Java integration

#8095 Tweak kwargs logic to improve JIT inlining

#8099 [ji] fix java_import when constant exists in Object

#8100 Extra splat instr which did nothing

#8101 Flip File.identical? logic to try native first

#8102 Update reline to 0.4.2

#8103 Prism pluggable integration work

#8105 Update JNR dependencies

#8107 update jruby-openssl to 0.14.3

#8108 fix undef_method error message

#8109 Simple error string mismatch. Also corrected for m17n naming to prin…

#8110 Re-arrange indexerror string when matching group name cannot be found

#8111 NameError and NoMethodError should be dup’ing receiver

转自 News — JRuby.org