JRuby 1.1.2及Ruby 1.8.7的新预览版发布了

就在RailsConf 2008开始时,JRuby 1.1.2发布了(下载JRuby 1.1.2)。这个1.1.x分支版本修复了很多bug并提升了性能。

通过将JRuby.jar放到根类路径下,启动速度得到了提升(参看之前的报道)——因为不会校验字节码,所以从根类路径下加载类要比从正常的类路径下快。

在MRI稳定的Ruby 1.8.x分支中发布了新的Ruby运行时环境。Ruby 1.8.7 preview 4发布了。你可以看到自从1.8.6以来新加的特性和API的一个大概列表,或者查看MRI的完全修改日志。

Ruby 1.8.7 preview 4的新特性和之前预览版的区别表明某些活动和曾经加入的一些特性又消失并发生了变化。

一个大的变化是Symbol#to_proc的再现。该特性在Ruby 1.9中首次出现。Ruby 1.8.7 preview 1包含一个向后兼容的版本——但人们很快就发现使用Symbol#to_proc的客户化版本会导致软件崩溃,尤其在Rails中。这导致该特性被移除了——在改变其行为并通过测试后,它现在又回来了。Symbol#to_proc看起来会保留在Ruby 1.8.7中。

这是之前未提到的进一步的API变化列表:

  • Binding#eval
  • __method__,以Symbol的形式返回当前方法名
  • String#bytesize,以字节形式返回字符串的长度
  • Object#instance_exec

一些APIs的行为已经发生了变化,这可能导致一些应用出现问题:

  • Date.parse发生了变化,这样'##.##.##'现在被解释成 'YY.MM.DD' ,而不是'MM.DD.YY'。
  • String#to_i、String#hex和String#oct的行为发生了变化,对于数字串中的下划线'_',如'1__0'.to_i,在Ruby 1.8.6中的结果是'10',而在Ruby 1.8.7中的结果为'1'。请查看发布说明以了解更全面的信息。

查看英文原文:Releases: JRuby 1.1.2; New Preview of Ruby 1.8.7

你可能感兴趣的:(JRuby 1.1.2及Ruby 1.8.7的新预览版发布了)