显示过时的宝石?

时间:2012-04-09 12:41:49

标签: ruby gem bundler

为避免崩溃,我在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 个答案:

答案 0 :(得分:21)

使用bundler的最新版本(1.1),您可以执行bundle outdatedsee this page.

要将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 :(得分:1)

同意@Gazler,你可以使用过时的套装来查看最新的宝石。您还可以使用SourceNinja(www.sourceninja.com)等服务,当新的宝石可用时,它会向您发送电子邮件通知。

披露:我在SourceNinja工作。

答案 2 :(得分:1)

bundle outdated将完成这项工作。但这不是自动化的。如果要自动执行该过程,则应使用VersionEyeVersionEye可以监控GitHub或Bitbucket上的Gemfile,并通过电子邮件通知您项目中过时的依赖项。

顺便说一下。我是开始VersionEye的老兄。