mirror of
https://github.com/golang/go
synced 2024-11-24 02:00:20 -07:00
cmd/go: write changes to go.mod and go.sum after loading the command-line-arguments package
This entrypoint was missed in CL 349600, and the behavior happened not to be covered by existing tests. Fixes #52331. Change-Id: Iccf12e8e633215abe4bfa1c3ca2fe3a8391b5ba5 Reviewed-on: https://go-review.googlesource.com/c/go/+/401536 Run-TryBot: Bryan Mills <bcmills@google.com> Auto-Submit: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Michael Matloob <matloob@golang.org>
This commit is contained in:
parent
265b5fd2f1
commit
cf697253ab
@ -717,6 +717,12 @@ func ImportFromFiles(ctx context.Context, gofiles []string) {
|
||||
},
|
||||
})
|
||||
requirements = loaded.requirements
|
||||
|
||||
if !ExplicitWriteGoMod {
|
||||
if err := commitRequirements(ctx); err != nil {
|
||||
base.Fatalf("go: %v", err)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// DirImportPath returns the effective import path for dir,
|
||||
|
35
src/cmd/go/testdata/script/mod_run_issue52331.txt
vendored
Normal file
35
src/cmd/go/testdata/script/mod_run_issue52331.txt
vendored
Normal file
@ -0,0 +1,35 @@
|
||||
# Regression test for https://go.dev/issue/52331: 'go run -mod=mod'
|
||||
# failed to write go.mod and go.sum with the resolved dependencies.
|
||||
|
||||
[short] skip
|
||||
|
||||
! go run main.go
|
||||
# stderr '^main\.go:6:2: no required module provides package example\.com/version; to add it:\n\tgo get example\.com/version\n\z'
|
||||
|
||||
go run -mod=mod main.go
|
||||
cmp go.mod go.mod.want
|
||||
grep -count=1 '^example\.com/version v1.1.0 h1:' go.sum
|
||||
grep -count=1 '^example\.com/version v1.1.0/go.mod h1:' go.sum
|
||||
|
||||
-- go.mod --
|
||||
module example
|
||||
|
||||
go 1.17
|
||||
-- go.mod.want --
|
||||
module example
|
||||
|
||||
go 1.17
|
||||
|
||||
require example.com/version v1.1.0 // indirect
|
||||
-- main.go --
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"example.com/version"
|
||||
)
|
||||
|
||||
func main() {
|
||||
fmt.Println(version.V)
|
||||
}
|
Loading…
Reference in New Issue
Block a user