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

JRuby 10.0.3.0 发布

JRuby 10.0.3.0 发布

JRuby 社区很高兴宣布 JRuby 10.0.3.0 的发布。

  • 主页:https://www.jruby.org/
  • 下载:https://www.jruby.org/download

JRuby 10.0.3.x 目标兼容 Ruby 3.4。

感谢本版本的贡献者,你们帮助 JRuby 持续前进!@mrnoname1000, @ngr-ilmarh, @Earlopain, @philr, @jotamartos, @kares, @aleksandrs-ledovskis, @trinistr, @katafrakt, @chadlwilson, @khasinski, @evaniainbrooks

兼容性

  • JRuby 现在报告 RbConfig::CONFIG['arch'] 而不带版本号,作为 universal-java 。这允许使用不同的 JDK 版本,而不会触发已安装宝石的 RubyGems 缺少扩展警告。主机 Java 版本仍然可用作为 RbConfig::CONFIG['arch_version'] 。 #9107

标准库

  • 非宝石的标准库升级到 Ruby 3.4.5 #8967
  • rexml 已更新至 3.4.4 版本,以修复 CVE-2025-58767 漏洞。 #9011
  • syslog 已迁移至默认 gem 包,版本为 0.4.0。syslog gem 现在包含 JRuby 支持。 #9109, ruby/syslog#1
  • strscan 已更新至 3.1.7 版本。 #9159

文档说明

  • Ruby 核心和标准库的文档现在包含在发布版本中。#9049, #9052

所有问题/PR

  • #8707 警告:sun.misc.Unsafe 中调用了已废弃的方法
  • #8727 无法安装最新的 rubocop
  • #8730 启动器:防御性修复
  • #8758 自 9.3.0 起,如果类在模块内部,Require 不可用于 .class 文件
  • #8810 8809 的可能修复方案
  • #8923 NameError 用于自动加载的常量,带有 private_constant
  • #8934 JRuby 在 Java 22+下始终认为它正在 TTY 下运行
  • #8940 验证_to_s 是否为字符串,否则回退到 anyToString
  • #8947 新增对 JDK 22+下 System.console 的 tty 检查
  • #8955 Range#count 对于 Integer 边界始终返回 size
  • #8956 处理传递给 Range#count 的参数或块
  • #8958 并发 requires 可能导致 StringIndexOutOfBoundsException
  • #8960 修复搜索特征路径时 index -1 的错误
  • #8962 升级 polyglot 并移除 openssl 库的 hack
  • #8967 将标准库更新到 3.4.5 并清理旧文件
  • #8975 使用 RuboCop 清理 poms(10.x)
  • #8976 JRuby v10.0.1.0 中关键字参数匹配的回归问题
  • #8978 针对基于 scheme 的 globbing 的额外修复
  • #8984 glob 重构
  • #8985 修复语言规范中错误字符串变更的问题
  • #8987 InvokeDynamicSupport.findVirtual 因 IllegalAccessException 失败:符号引用类不可访问
  • #8989 在 Lookup.find*之前明确请求访问权限
  • #8994 autoload 和 private_constant 不兼容
  • #8995 private_constant 应该只更新现有的 autoload
  • #8996 避免绑定不可读模块的类
  • #8998 Time#localtime 错误地将零时区视为 UTC(v10.0.2.0 中的回归问题)
  • #9006 在搜索时将 .class 视为源扩展
  • #9007 处理 warn(foo, uplevel: nil )
  • #9009 使用未定义字符编码字符串时失败并抛出 NoMethodError
  • #9010 修复 Time#localtime 和 Time.at 将 “+00:00” 和 0 视为 UTC 的问题
  • #9011 更新 rexml gem 以解决 CVE-2025-58767
  • #9016 [修复] 调用 Java 代理的静态 hash() 方法时的回归问题
  • #9017 无法使用具有静态 hash() 方法的 Java 类
  • #9018 解析器在 Windows 上读取 \r\n 时不会转换换行符
  • #9019 我们需要从 heredoc 字符串中移除\r
  • #9021 停用安全的双重处理工具
  • #9024 将所有主类移动到 org.jruby.main 包
  • #9027 在裸 Deprecated 注解中添加“since”
  • #9035 IO#read 不清除缓冲区参数的代码范围
  • #9036 修复:在重用字符串缓冲区时清除代码范围
  • #9038 为所有 jar 清单添加打开和本地访问
  • #9039 更新所有 jnr 依赖项
  • #9041 将 .java-version 内容迁移到 .jruby.release
  • #9049 核心 ri 文档不可用
  • #9050 Marshal 无法加载带有编码 ivar 的编码
  • #9051 解析编码时忽略编码
  • #9052 下载并包含到 dist 中 CRuby 的 rdoc 数据
  • #9058 实现高效的 unshifting
  • #9059 在 unshifting 元素前预留额外空间
  • #9063 Hash 的 compare_by_identity 状态无法序列化
  • #9065 保留 marshal 化 Hash 的 compare_by_identity
  • #9068 Windows 持续集成规范运行
  • #9073 修复:允许使用 ENV 变量覆盖 JSA 文件位置
  • #9084 object_id 改进
  • #9094 实现 GC.config [Ruby 3.4]
  • #9097 将 jruby-openssl 更新到 v0.15.5 以解决 BouncyCastle 1.79 漏洞 (sonatype-2025-001911)
  • #9098 修复 CoverageData.mergeLines 在覆盖率增加时的行为
  • #9101 缓存 fixnums 以支持立即值
  • #9103 将 jruby-openssl 更新到 0.15.5
  • #9106 为许多集合使用更小的默认大小
  • #9107 将 Java 版本从 rbconfig 的‘arch’中分离出来
  • #9108 整理默认 gem
  • #9109 切换到 syslog gem
  • #9110 在 proc 上调用 inspect 会重置 source_location 中的行
  • #9112 防止在 RubyProc 中修改状态
  • #9117 在删除不存在的文件时,向错误消息中添加文件路径
  • #9122 在 Windows 上出现意外的 jruby.sh 错误消息
  • #9127 修复(launcher):在 Bash/msys2 等在 Windows 上正确解析 java 版本文件
  • #9138 复制数据类型的变量表管理器与新 realClass
  • #9141 出于易出错的原因进行的重构和清理
  • #9142 将 GC 的方法从 module_function 改为元类方法
  • #9145 永远不要信任外部内容用于 FString
  • #9152 Marshal.dump 对大型 Array 结构的损坏
  • #9157 更新包含的宝石
  • #9158 使用相同的键匹配 containsKey
  • #9159 将 strscan 更新到 3.1.7
  • #9182 修复使用无效编码时出现的 NoMethodError::replace 选项
  • #9188 each.map 与 each 和单独的 map 的参数不同 (10.0)
  • #9189 修复 #8952。嵌套 it 应该是不同的 it s
  • #9190 从 10.1 回滚隐式局部变量修复
  • #9191 修复 #8952。嵌套“it”行为损坏
  • #9192 尝试修复 #8976
  • #9194 BigDecimal#+ , #- , #add , #sub 总是尝试将强制转换的结果转换为 RubyBigDecimal
  • #9196 require "bigdecimal" 如果之前已经调用过,则不会安装 BigDecimal()
  • #9199 在将 Float 转换为 JSON 时,jRuby 10.0.0.1 和 Ruby 3.4 的输出格式差异
  • #9200 将浮点数格式提取为静态方法以用于 to_json
  • #9203 从生成的 populators 中使方法缓存失效
  • #9204 修复 BigDecimal#+, #-, #add, #sub 在强制转换不返回 BigDecimal 时失败的问题
  • #9205 修复编码回退错误处理和错误消息格式问题

转自  News — JRuby.org