|
作者:Administrator
|
|
2007-12-25 00:38 |
|
JRuby 1.0.3 已经发布了,它是JRuby 1.0.x分支的另一个稳定版。在所修正的错误当中,这一版修正了一些与Rails 2.0相关的问题,这些问题是由于Rails 2.0现在需要OpenSSL所引起的。
Nick Sieger,JRuby团队成员,报告了在JRuby 1.0.3中的另一个修改: 正常情况下,一个1.0.3版本不至于让人这么兴奋,但是这一回,主干(trunk)的内部API(好几个JRuby扩展所依赖的)开始产生分叉。很不幸,这迫使我们面临一个抉择:要么分叉并维护每个扩展的两个版本(一个是1.0.x,另一个是1.1及更高版),要么中止向后兼容。最终我们选择了后者,宁愿是一个单一教派,也不愿陷入并行版本的苦境。 根据这一点,Nick继续给出了一个有用的表格,显示Ruby库和Gem与JRuby版本的对应关系:
| |
1.0 - 1.0.2, 1.1b1 |
1.0.3, 1.1b2 |
| Library |
|
| rubygems |
<= 0.9.4 |
<= 0.9.4, = 1.0 * |
| rails |
<= 1.2.6, >= 2.0.x † |
any |
| activerecord-jdbc |
<= 0.6 |
>= 0.7 |
| jruby-openssl |
<= 0.0.5 |
>= 0.1 |
| goldspike |
1.3 |
1.4 |
| mongrel |
any ‡ |
1.1.2 |
注意Rails 2.0可以与所有版本一起工作,虽然在表格左手侧JRuby版本(1.0 - 1.0.2, 1.1b1)一列,jruby-openssl <= 0.5 是需要被安装的。
在JRuby 1.1的新闻中,花在改善正则表达式支持和性能上的工作看起来已经兑现。 Tim Bray展示了一个用Ruby写的工具的运行时间,运行是在不同Ruby版本下进行的。最后两行(摘录至此)显示了JRuby 1.1中最近的性能提升(值越低越好):
|
Elapsed |
User |
System |
| JRuby 1.1b |
62.5 |
63.4 |
1.3 |
| JRuby trunk |
43.5 |
44.5 |
1.0 |
这个JRuby trunk是2007年12月17日源文件的checkout,而这个JRuby 1.1b是几个星期前发布的。在Tim文章的评论中,JRuby的Charles Nutter解释了这两者相当多的区别: 从JRuby 1.1b1到trunk的改进几乎全部归功于Marcin Mielczynski令人惊讶的举动——他将Oniguruma移植到了JVM。我们第一次有了真正的基于byte数组的regex引擎,这意味着JRuby regex性能得到了极大的提升。
|
|
最后更新于: 2007-12-25 00:38 |