Engine Yard要接管Ruby 1.8.6的维护?

当前Ruby的境地很尴尬,它有很多不同的实现/分支,而且特性迥异——当然这并不是针对其竞争者JRuby、Rubinius、MagLev及IronRuby来说的,而是其1.8.6、1.8.7和1.9.1这三个版本。

几周前Ruby 1.9.1终于发布了其稳定版,同时也开始不断劝说开发者从1.8版上迁移过来。去年5月发布的Ruby 1.8.7通过移植一些特性和API变更来简化从1.8迁移到1.9的代价。但遗憾的是,一些库和框架并非只是与该版本的Ruby搭配使用,这导致了很多人对1.8.7敬而远之。Ruby的其他实现的进度也是相当的慢,最后造成了JRuby完全跳过了1.8.7的结果。

这就是Matz及核心的开发者所维护的Ruby中有三个不兼容版本的原因所在了。大家就该情况展开了一系列讨论,最后建议Ruby核心团队将1.8.6版的维护工作转交给他人,而当前的维护者maintainer Shyouhei也乐意这么做。来自于Engineyard(已在Ruby 1.8.6上运行了大约6000个虚拟机,他们不打算升级)的Ezra Zygmuntowicz“很高兴接受Ruby 1.8.6的维护工作”,Shyouhei也对其表示欢迎:“如果没有人申请的话,我很愿意将Ruby 1.8.6的维护工作交你接管”。

有些问题仍在讨论当中,比如是否将其迁移到GitHub上及迁移到哪个分支上。Brent Roman的“MBARI”补丁看起来很有希望,它修复了一些长期存在的内存泄漏问题和Ruby GC的一些问题(InfoQ已经报道过MBARI补丁及其作用)。下面的内容来自于Ezra的邮件列表:

我们支持Brent将这些补丁打到当前的1.8.6上并希望他们成为主线上的1.8.6、1.8.7及1.8.*的一部分。这些补丁并不会破坏任何API或是产生向后兼容问题,相反他们能极大的改进我们测试的所有Ruby应用的内存问题。在测试中我们看到Ruby应用的GC占据了45%的CPU时间,而应用这些补丁能极大的降低CPU的占用率。

但这对于开发者选择Ruby版本的决策来说却没有什么用处,Ruby 1.8.6仍会继续存在并得到维护。你还在使用1.8.6么,如果是的话,为什么不升级呢?

查看英文原文:Engine Yard to Take Over Ruby 1.8.6 Maintenance?

你可能感兴趣的:(Engine Yard要接管Ruby 1.8.6的维护?)