版本控制

badge

Erg 编译器根据语义版本控制分配版本号。 但是,在版本 0 期间,应用的规则与平时不同(遵循比语义版本控制更详细的规则)。 需要注意的是,Erg 中有两种类型的兼容性。一个是规范兼容性,表示与语言规范的兼容性,另一个是内部兼容性,表示与(公共)API(如编译器)的兼容性。

  • 在版本 0 期间,次要版本中的规范和内部兼容性可能会中断。这与正常的语义版本控制相同。
  • 补丁版本不会破坏规范兼容性,但不能保证内部兼容性。
  • 新功能主要在次要版本中添加,但如果它们是简单的语言功能或编译器功能,也可以在补丁版本中添加。

发布周期

  • 补丁大约每 1~2 周发布一次。
  • 次要版本的发布频率大约是补丁发布的 10 倍,即每 3~6 个月发布一次。
  • 主要版本是无限期发布的。目前未计划版本 1 版本的计划。

每晚/测试版

Erg 将不定期进行夜间和测试版发布。每晚发布是新补丁版本的预发布,测试版是新的次要/主要版本的预发布。 每晚和测试版发布在 crates.io 上,测试版也发布在 GitHub 版本上。

每晚版本的格式是0.x.y-nightly.z。测试版也是如此。

几乎每天都会发布每晚版本(如果没有更改,则不会发布),而测试版则不定期发布。但是,一旦发布测试版,几乎每天都会发布新的测试版。