SkyAPM / go2sky

Distributed tracing and monitor SDK in Go for Apache SkyWalking APM
https://skywalking.apache.org/
Apache License 2.0
448 stars 122 forks source link

Irregular use of go tag #72

Closed bejens closed 3 years ago

bejens commented 4 years ago

Describe the bug

Upgrades that are not compatible in the go language should use the following forms: https://blog.golang.org/v2-go-modules instead of simply upgrading tags, this is because go get -u will upgrade the direct and indirect dependencies in the project. This will upgrade the indirect dependencies if possible Will cause code incompatibility, as shown below:

To Reproduce Steps to reproduce the behavior:

I have 2 projects A, B, and B depends on A, A depends on go2sky@v0.3.0:

A: v1 (dep: go2sky) B: v1 (dep: B)

when you use go get -u in B project. A(direct dependency) and go2sky (indirect dependencies) will upgrade to latest, If the v0.5.0 version of go2sky is not backward compatible, B project will get error

Expected behavior

Incompatible upgrades can follow golang version management specifications

Screenshots If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

Additional context Add any other context about the problem here.

arugal commented 4 years ago

v2-go-modules seems like a good idea. Can we talk about it over WeChat? my email zhangwei24@apache.org :)