From: wagner riffel Date: Sat, 7 Jun 2025 19:28:20 +0000 (-0300) Subject: cmd/go: fix get -tool when multiple packages are provided X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=dcc77f9e3c7097b497e99800a7a4ed80c7a430d8;p=gostls13.git cmd/go: fix get -tool when multiple packages are provided Fixes #74035 Change-Id: I51865f4f753aade9a8be62ed6f9bc2d298742bf1 Reviewed-on: https://go-review.googlesource.com/c/go/+/679975 Reviewed-by: Ian Alexander Reviewed-by: Michael Matloob Reviewed-by: Michael Matloob Auto-Submit: Sean Liao LUCI-TryBot-Result: Go LUCI Reviewed-by: Sean Liao --- diff --git a/src/cmd/go/internal/modget/get.go b/src/cmd/go/internal/modget/get.go index 31e9244e2d..25dbf3972f 100644 --- a/src/cmd/go/internal/modget/get.go +++ b/src/cmd/go/internal/modget/get.go @@ -453,7 +453,7 @@ func updateTools(ctx context.Context, queries []*query, opts *modload.WriteOpts) if queries[i].version == "none" { opts.DropTools = append(opts.DropTools, m.Pkgs...) } else { - opts.AddTools = append(opts.DropTools, m.Pkgs...) + opts.AddTools = append(opts.AddTools, m.Pkgs...) } } } diff --git a/src/cmd/go/testdata/script/mod_get_tool_issue74035.txt b/src/cmd/go/testdata/script/mod_get_tool_issue74035.txt new file mode 100644 index 0000000000..d6fa592c7b --- /dev/null +++ b/src/cmd/go/testdata/script/mod_get_tool_issue74035.txt @@ -0,0 +1,25 @@ +# Regression test for https://go.dev/issue/74035. +go get -tool example.com/foo/cmd/a example.com/foo/cmd/b +cmp go.mod go.mod.want + +-- go.mod -- +module example.com/foo +go 1.24 +-- go.mod.want -- +module example.com/foo + +go 1.24 + +tool ( + example.com/foo/cmd/a + example.com/foo/cmd/b +) +-- cmd/a/a.go -- +package a + +func main() {} + +-- cmd/b/b.go -- +package b + +func main() {}