JRuby 9.2.11.1 发布 Java 的 Ruby 解释器

JRuby 9.2.11.1 发布了。JRuby 是面向 Ruby、基于 Java 虚拟机 JVM 的一种解释程序,它结合了 Ruby 语言的简易性和功能强大的 JVM 执行机制,并与 Java 库全面集成。

JRuby 9.2.x 与 Ruby 2.5.x 兼容,并与 C Ruby 保持同步。

9.2.11.1 是一个解决了单个问题的迷你发行版,该版本解决的问题:

  • 带有精度的 printf 子字符串格式可能会暴露字符

具体来讲,如果使用精度说明符(例如 %.1s)格式化字符串,然后传入较大字符串的子字符串,则格式化结果中可能会看到一些较大字符串的字符。这是由于内部 String 数据处理中的 bug 导致结果包含的字符数超过了请求的字符数。

long_string = "aabbccddhelloddccbbaa"
start_index = 8
sub_str_length = 5
precision = 3
sub_string = long_string[start_index, sub_str_length]
puts sprintf("%.#{precision}s", sub_string)
# => helloddccbb

此问题可能会暴露原始 String 中的敏感内容,官方建议升级。详情查看更新说明:https://www.jruby.org/2020/03/25/jruby-9-2-11-1.html

原文标题:JRuby 9.2.11.1 发布,Java 的 Ruby 解释器

原文地址:https://www.oschina.net/news/114361/jruby-9-2-11-1-released

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-62778877-8261;邮箱:jenny@west.cn。本站原创内容未经允许不得转载,或转载时需注明出处::西部数码资讯门户 » JRuby 9.2.11.1 发布 Java 的 Ruby 解释器

赞 (0)