go.mod 中的“不兼容”是什么意思,会造成伤害吗?
技术问答
269 人阅读
|
0 人回复
|
2023-09-12
|
我在我的项目中使用它goczmq,如下所示:
: ~# _5 u) j+ O+ c" Mmain.go:8 l$ W0 U6 y3 y8 \. J$ D
$ q1 J$ R W" e5 _4 \
- package mainimport _ "github.com/zeromq/goczmq")func main()code]而且,我用 golang 1.12 和 gomod 管理我的项目。
0 g7 J( s/ L2 T2 g! T+ S7 I/ j* ^ - 接下来,我用go mod init xxx,在构建过程中,它会自动为我下载 goczmq 并添加依赖项go.mod,但其中有incompatible。(但对于其他图书馆,我可能会得到类似的东西github.com/kolo/xmlrpc v0.0.0-20190717152603-07c4ee3fd181)
& ^/ Q* a" x- Q. z C - go.mod:[code]module pigeongo 1.12require github.com/zeromq/goczmq v4.1.0 incompatible)# h+ {$ }- C8 s9 Q, a$ E
从一些讨论(对于其他图书馆),比如this,图书馆所有者似乎应该做些什么来支持 golang 1.12?但是在我的情况下,一切都很好,只是incompatible让我有点担心(我的意思是现在一切都很好,但有一天,当我使用我以前从未使用过的 时,api 时,会有隐藏的炸弹......?)
. F) J' t8 Q4 _# ?5 A8 C' Q: K所以我的问题:
" l5 N. r+ G# b- ]我应该担心这个,还是像预期的那样?$ L; ?4 i+ a6 Z
$ z0 ~3 L$ L: d/ _
解决方案:
* ^6 j8 s0 ~: P) W incompatible 意味着 semver 主要版本是 2 或更高,而不是 Go 模块(它的源代码中没有 go.mod)。 |
|
|
|
|
|