Skip to content

cmd/go: module dependencies not updated with go get -u in 1.17 #47768

Closed
@niallnsec

Description

@niallnsec

What version of Go are you using (go version)?

$ go version
go version go1.17 darwin/amd64

Does this issue reproduce with the latest release?

Yes

What operating system and processor architecture are you using (go env)?

go env Output
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/USER/Library/Caches/go-build"
GOENV="/Users/USER/Library/Application Support/go/env"
GOEXE=""
GOEXPERIMENT=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users/USER/go/pkg/mod"
GONOPROXY="private1.repo,private2.repo"
GONOSUMDB="private1.repo,private2.repo"
GOOS="darwin"
GOPATH="/Users/USER/go"
GOPRIVATE="private1.repo,private2.repo"
GOPROXY="https://private2.repo:4443"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GOVCS=""
GOVERSION="go1.17"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/dev/null"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -arch x86_64 -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/zx/4vdy2gqd5b1g26g7n8lt0zk80000gn/T/go-build4221827946=/tmp/go-build -gno-record-gcc-switches -fno-common"

What did you do?

I ran go get -u

What did you expect to see?

I expected the module dependencies to be update as usual.

What did you see instead?

Only a small number of dependencies were updated. Even directly imported packages with new versions were not updated. The command appeared to download the new versions but did not update the go.mod file.

USER@MacBook-Pro ‹ master › : ~/project/auth
[0] % go get -u           
go: downloading private2.repo/project/mfa v0.2.5
go: downloading private2.repo/project/webauthn v1.0.3
go: downloading github.com/fxamacker/cbor v1.5.1
go get: upgraded github.com/aws/aws-sdk-go v1.40.23 => v1.40.24

After running the above command, go.mod still has a require line for private2.repo/project/mfa v0.2.4 and private2.repo/project/webauthn v1.0.2 instead of upgrading them to the new version it just downloaded. Also, many package updates are completely ignored.

If I use go 1.16.4 instead I get the following and go.mod is updated as expected with all the appropriate new versions.

USER@MacBook-Pro ‹ master › : ~/project/auth
[0] % go1.16.4 get -u
go: downloading github.com/cenkalti/backoff v1.1.0
go: downloading github.com/dgrijalva/jwt-go v1.0.2
go: downloading github.com/gofrs/uuid v1.2.0
go: downloading github.com/pierrec/lz4 v1.0.1
go get: upgraded golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97 => v0.0.0-20210817164053-32db794688a5
go get: upgraded golang.org/x/net v0.0.0-20210805182204-aaa1db679c0d => v0.0.0-20210813160813-60bc85c4be6d
go get: upgraded golang.org/x/sys v0.0.0-20210806184541-e5e7981a1069 => v0.0.0-20210817190340-bfb29a6856f2
go get: upgraded golang.org/x/text v0.3.6 => v0.3.7
go get: upgraded private2.repo/project/cryptoengine v0.1.3 => v0.1.4
go get: upgraded private2.repo/project/mfa v0.2.4 => v0.2.5
go get: upgraded private2.repo/project/webauthn v1.0.2 => v1.0.3

Metadata

Metadata

Assignees

No one assigned

    Labels

    FrozenDueToAgeNeedsInvestigationSomeone must examine and confirm this is a valid issue and not a duplicate of an existing one.

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions