我正在考虑将go-github从v17.0.0+incompatible升级到v28
我注意到一些versions that go-github released有一个+incompatible后缀,特别是对于v1类别。这需要什么?我猜+incompatible的版本与新/旧版本不兼容?
通常,在更新第三方依赖项时,如何知道升级到较新版本是否安全?我是否只需通读更改日志?
发布于 2020-05-29 07:52:42
一般来说,Go不希望您对项目的多个不兼容版本使用相同的导入路径。这使得一个依赖项可以使用模块的一个主要版本,而另一个依赖项可以使用另一个。
此语法表示存储库没有为非v0、非v1版本的模块路径使用后缀,并绕过了执行语义导入版本控制的模块代码中的逻辑。有关此功能的文档是available on the Go website。
由于从一个主要版本迁移到另一个版本是语义版本控制的重大变化,因此您需要确定它们是否兼容。+incompatible后缀并不隐含地表示这一点,但是从v17到v28就是这样。因此,changelogs可能是一个好主意,或者如果您对自己的测试套件有信心,也可以只更新并运行测试。
https://stackoverflow.com/questions/62076053
复制相似问题