【发布时间】:2021-05-09 00:33:17
【问题描述】:
这个问题是关于Haskell Package Versioning Policy。
我理解我们应该在何时以及为什么要调整主要版本和次要版本的原因。但是,将A.B 用于专业,将C 用于次要有什么意义呢?我什么时候应该碰A,什么时候碰B?为什么我们没有像semantic versioning 政策那样只有一个主要版本的位置?
【问题讨论】:
标签: haskell versioning
这个问题是关于Haskell Package Versioning Policy。
我理解我们应该在何时以及为什么要调整主要版本和次要版本的原因。但是,将A.B 用于专业,将C 用于次要有什么意义呢?我什么时候应该碰A,什么时候碰B?为什么我们没有像semantic versioning 政策那样只有一个主要版本的位置?
【问题讨论】:
标签: haskell versioning
有很多更改需要大版本升级,但实际上是对库的微小更改。添加Functor 或Traversable 实例之类的事情是非常小的更改,但需要一个主要版本的提升。从 api 中删除一个函数需要一个主要的版本。
但许多库也经历了巨大的变化。 API 的全部重写。更改核心类型和功能的语义。替换整个事物以寻求更好的抽象。
前一个更改需要更新 B。后者需要更新 A。当然,中间需要做出判断。但粗略的规则是,对于需要主要版本提升的小事情,B 会递增,而 A 会因重大 API 更改而递增。
【讨论】: