Ruby 2.2.0 发布

我们很高兴地宣布 Ruby 2.2.0 的发布。

Ruby 2.2 包含了许多新特性和改进,以满足 Ruby 日益多样化和不断增长的需求。

例如,Ruby 的垃圾回收器现在能够回收 Symbol 类型的对象。这减少了 Symbol 的内存使用;因为在 2.2 之前,GC 以前无法回收它们。由于 Rails 5.0 将需要 Symbol GC,因此它将仅支持 Ruby 2.2 或更高版本。(详情请参阅 Rails 4.2 发布公告。)

此外,由于新的增量垃圾回收器,减少的暂停时间将有助于运行 Rails 应用程序。Rails 博客 上提到的最新进展表明,Rails 5.0 将利用增量 GC 以及 Symbol GC。

另一个与内存管理相关的功能是 configure.in 的附加选项,可以使用 jemalloc 功能 #9113。此功能仍处于实验阶段,目前默认禁用,直到我们收集到性能数据和更多用例。当我们确信其好处时,此功能将默认启用。

还增加了使用 vfork(2) 与 system() 和 spawn() 的实验性支持。您可以在 tanaka-san 的日语博客上阅读更多详细信息。当一个大型进程多次执行外部命令时,这可能会带来巨大的速度提升。但是,vfork(2) 仍然没有被很好地理解,并且是一个潜在的有害系统调用。我们希望通过收集性能数据和用例来尝试找出可以获得多少好处。

尝试并享受使用 Ruby 2.2.0 编程的乐趣,并向我们报告您的发现!

自 2.1 以来的显著变化

有关详细信息,请参阅 Ruby 存储库中的 NEWS

经过这些更改,与 v2.1.0 相比,共修改了 1557 个文件,增加了 125039 行代码(+),删除了 74376 行代码(-)!

下载

  • https://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.0.tar.bz2
    • 大小:13304042 字节
    • MD5: d03cd4690fec1fff81d096d1c1255fde
    • SHA256: 1c031137999f832f86be366a71155113675b72420830ce432b777a0ff4942955
    • SHA512: 04edc53e8cd1732c3ca61ebeb1d6133614beb10f77f9abb80d8d36352fe8aa205112068e460bf600b2c7e81e0ddcc3b311e7e027c320366f1bd992b3e378a6ad
  • https://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.0.tar.gz
    • 大小:16494584 字节
    • MD5: cd03b28fd0b555970f5c4fd481700852
    • SHA256: 7671e394abfb5d262fbcd3b27a71bf78737c7e9347fa21c39e58b0bb9c4840fc
    • SHA512: 1ba0c68e1c8d2b60bbd1e218cf36463edbe34cf9418d7593702b631e68d02297465f752e71395f6cfa4104f4cd70a1eb44381ffb74bc7801758b830931fdcfc6
  • https://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.0.tar.xz
    • 大小:10304244 字节
    • MD5: 54b43c6c6c9dd4c4b08ceb03ad0ded7a
    • SHA256: 848714e280fc5fb44dbac3b060b206e56c1947006324ee68a174d68b483ef8ca
    • SHA512: cd7e52faa464df8aca7ccfa23a5f06248e1ad82bc8c9f1829aa1b51ff37b15973b8caaa68e914d837325b8d59427fda4f3cad82c50925e1c84e688324a2a155d
  • https://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.0.zip
    • 大小:18441027 字节
    • MD5: f8e1d0cee4f2d9535a9529ed23ae3700
    • SHA256: e06c1e2b1248cf881749833084b2bec93f7612676009190ff9bc89b8fd07c29f
    • SHA512: 364dd927b496520d95a1b06c68e1a265015f4cab08bdf3efaa323d385e7bf075eae47f2e1db78a629db0f3c0c1ed24e086603ba21e2da02ac06dd3c8b716766e