golang/go

cmd/go: several commands require the build cache but don't use it

オープン

#39,882 opened on 2020/06/26

 (6 件のコメント) (0 件のリアクション) (0 人の担当者)Go (19,008 件のフォーク)batch import
GoCommandNeedsFixhelp wanted

Repository metrics

Stars
 (133,883 個のスター)
PR merge metrics
 (30d に merged PR はありません)

説明

Steps to repro:

docker run -i golang:1.15beta1 <<-SCRIPT

        set -ex

        go version
        go env

        mkdir /tmp/foo
        cd /tmp/foo
        go mod init test
        go mod edit -go=1.13

        HOME= GOCACHE= go mod edit -go=1.14

SCRIPT

I think this should succeed. go mod edit -go=X only has to modify a line in go.mod, it shouldn't require the build cache to exist or be writeable. However, that last command fails:

+ go mod edit -go=1.14
build cache is required, but could not be located: GOCACHE is not defined and neither $XDG_CACHE_HOME nor $HOME are defined

I encountered this while writing some tests, which are run in a temporary directory with a near-empty environment (partly to not pollute the user's $HOME and such).

コントリビューターガイド