【发布时间】:2015-08-22 17:30:41
【问题描述】:
假设您正在使用Devise gem。您应该在 Gemfile 中使用以下哪个版本:
'devise', '~> 3.5.1'
或
'devise', '~> 3.5'
使用其中一种的优缺点是什么?
根据 RubyGems:
PATCH 0.0.x 级别更改用于实现级别的细节更改, 比如小bug修复
任何向后兼容的 API 更改的轻微 0.x.0 级别更改, 例如新功能/特性
针对向后不兼容的 API 更改的主要 x.0.0 级别更改,例如 因为如果更新会破坏现有用户的代码
那么使用'devise', '~> 3.5' 是否有意义,因为一旦运行bundle update 就会得到小错误修复?
【问题讨论】:
-
阅读 RubyGems 的官方文档。Semantic Versioning
-
我明白那里所说的......问题是使用补丁级别版本来修复错误会更好(即
'devise', '~> 3.5'而不是'devise', '~> 3.5.1'
标签: ruby-on-rails ruby gem rubygems semantic-versioning