展示过时的宝石?

14

为了避免任何意外,我在我的 Gemfile 文件中为每个 gem 指定版本号:

gem 'sass-rails',   '~> 3.1.5'
gem 'coffee-rails', '~> 3.1.1'
gem 'uglifier', '~> 1.0.3'
gem 'haml-rails', "~> 0.3.4"
gem 'simple_form', '~> 1.5.2'

但是我至少想知道是否有一些我还没有安装的更新版本。例如,simple_form 2.0.0已经发布。

我可以在RubyGems上检查每个 gem,但肯定有自动工具可以完成这项工作,对吧?

3个回答

24

使用最新版本(1.1)的bundler,您可以执行bundle outdated请参阅此页面。

要将bundler更新为最新版本,您可以运行gem update bundler

gazler@gazler-laptop:~/development/rails/livestax$ bundle outdated
Fetching gem metadata from http://rubygems.org/.......
Fetching gem metadata from http://rubygems.org/..

Outdated gems included in the bundle:
  * multi_json (1.2.0 > 1.0.3)
  * activesupport (3.2.3 > 3.1.0)
  * activemodel (3.2.3 > 3.1.0)
  * rack (1.4.1 > 1.3.5)
  * rack-cache (1.2 > 1.0.3)
  * sprockets (2.4.0 > 2.0.3)
  * actionpack (3.2.3 > 3.1.0)
  * mime-types (1.18 > 1.17.2)

还有Gemnasium,但我从未使用过它。


1

同意 @Gazler 的观点,你可以使用 bundle outdated 命令查看最新的 gem 版本。你也可以使用像 SourceNinja (www.sourceninja.com) 这样的服务,它会在有新版本的 gem 时向你发送电子邮件通知。

声明:我在 SourceNinja 工作。


1

bundle outdated会完成这项工作。但是这并不是自动化的。如果您想自动化这个过程,应该使用VersionEyeVersionEye可以在GitHub或Bitbucket上监视您的Gemfile,并通过电子邮件向您通知项目中过时的依赖关系。

顺便说一下,我是开始使用VersionEye的人。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接