What is the problem this feature would solve? Please describe.
Currently doctl depends on github.com/digitalocean/godo v1.121.0 but do not follow to use the replace directive declared in godo's go.mod as below. Repo godo uses replace directive to pin github.com/stretchr/objx to version v0.2.0 and golang.org/x/crypto to version v0.0.0-20200420201142-3c4aac89819a.
According to Go Modules wikis, replace directives in modules other than the main module are ignored when building the main module. It means such replace usage in go.mod cannot be inherited by downstream projects automatically. Consequently, doctl's version of github.com/stretchr/objx and golang.org/x/crypto is different from the pinned version github.com/digitalocean/godo needed.
Possible Solution.
Remove the replace usage in github.com/digitalocean/godo.
What is the problem this feature would solve? Please describe. Currently
doctl
depends ongithub.com/digitalocean/godo v1.121.0
but do not follow to use the replace directive declared ingodo's
go.mod as below. Repogodo
uses replace directive to pingithub.com/stretchr/objx
to versionv0.2.0
andgolang.org/x/crypto
to versionv0.0.0-20200420201142-3c4aac89819a
.According to Go Modules wikis,
replace
directives in modules other than the main module are ignored when building the main module. It means such replace usage in go.mod cannot be inherited by downstream projects automatically. Consequently,doctl's
version ofgithub.com/stretchr/objx
andgolang.org/x/crypto
is different from the pinned versiongithub.com/digitalocean/godo
needed.Possible Solution.
github.com/digitalocean/godo
.