-1

不同版本号的 Rails 版本有多不兼容?这些数字的含义是什么?

例如,从版本 2.8.7 到 3.0.1,我们可能会遇到严重的不兼容问题。

但是,版本 2.7.1 和 2.7.2 或 3.0.6 和 3.0.7 会有多不兼容?

4

2 回答 2

5

一般来说,数字变化越大,核心变化越大。所以,2.8.7 到 3.0.1 将是一个重大变化,因为我们从 Rails 2 到 Rails 3(实际上是一个非常大的变化)。

另一方面,2.7.1 到 2.7.2 将是一些小修复。

正如 DHH 自己所说,只要有好的想法出现,Rails 总是愿意 100% 改变其核心。因此,您可以想象,从 2 到 3 或从 3 到 4 很可能会敲响巨大变化的钟声。

于 2011-04-26T09:16:21.803 回答
0

RubyGems 手册中

库以 3 种方式变化(嗯,不止 3 种,但请保持专注!)。

  • 更改可能只是一个实现细节,对客户端软件没有影响。
  • 该更改可能会添加新功能,但这样做的方式是使写入早期版本的客户端软件仍然兼容。
  • 更改可能会以旧软件不再兼容的方式更改库的公共接口。

RationalVersioningPolicy 提供以下准则:

版本应由三个非负整数表示,用句点分隔(例如 3.1.4)。

第一个整数是'''major'''版本号,第二个整数是'''minor'''版本号,第三个整数是'''build'''版本号。

  • 1 类更改(实施细节)将增加内部版本号。

  • 第 2 类更改(向后兼容)将增加次要版本号并重置内部版本号。

  • 第 3 类更改(不兼容)将增加主要内部版本号并重置次要版本号和内部版本号。gem 的任何“公共”版本都应该有不同的版本。通常这意味着增加内部版本号。这意味着开发人员可以整天为自己生成构建,但是一旦他/她公开发布,就必须更新版本。

就是这样。这不是太难。

另外。对此答案感兴趣的人也可能对悲观版本约束感兴趣

于 2011-04-26T09:59:31.193 回答