为了让原生的 Windows RubyGems 同时支持 Ruby 1.8 和 1.9, Aaron Patterson 提出了个解决方案:fat binary gems。Fat gem 包含用于两个版本的共享库,并且可以在运行期决定哪个应被加载。
Luis Lavena 已经开始着手把 Aaron 的变更整合到 rake-compiler 中,而且已经发布了 rake-compiler 的一个 beta 版本。感兴趣的读者可以从 Aaron在GitHub 的demo 中找到fat gem 的简单例子。
看起来,fat binary gem 的工作方式“和在同一个gem 中提供对JRuby 和Ruby 二者的支持的方法异曲同工,即(在gem 中)发布jar 文件扩展并在JRuby 运行时加载”, Charles Nutter 在 Aaron 的博客中留下了这样的评论。
说到 JRuby 和 RubyGems,大家可以从最近刚发布的网站 Is It JRuby 了解热门 gem 和 JRuby 之间兼容情况的现状,这个网站和 Is It Ruby 1.9 的风格如出一辙。
RubyGems 在 1.3.2 版引入插件机制,从而使得几个新插件在过去的几周中应运而生:Gabriel Horner写了个gem grep 插件作为例子,手把手向大家介绍如何编写gem 插件,而 Adam Sanderson 写了个 open 插件,可以轻松在默认编辑器中打开 gem 看源码。
查看英文原文: RubyGems Roundup: Fat Binary Gems, Is It JRuby and New Plugins
评论