]> Cypherpunks repositories - gostls13.git/commitdiff
[release-branch.go1.11] cmd/go: fix list -compiled of package with only tests
authorRuss Cox <rsc@golang.org>
Tue, 21 Aug 2018 01:35:02 +0000 (21:35 -0400)
committerIan Lance Taylor <iant@golang.org>
Wed, 22 Aug 2018 15:51:42 +0000 (15:51 +0000)
Fixes #27097.

Change-Id: I6aa48a1c58a21fd320b0e9dcd1f86c90172f0182
Reviewed-on: https://go-review.googlesource.com/130139
Run-TryBot: Russ Cox <rsc@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
(cherry picked from commit df6aedb630b3c79ff50147a85278a17702dcff1f)
Reviewed-on: https://go-review.googlesource.com/130617
Run-TryBot: Ian Lance Taylor <iant@golang.org>
Run-TryBot: Andrew Bonventre <andybons@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Reviewed-by: Andrew Bonventre <andybons@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>

src/cmd/go/internal/list/list.go
src/cmd/go/testdata/script/mod_list_test.txt [new file with mode: 0644]

index 186b006c12acd555c6b9311ccb3953a0b1a8de46..f3cb4e47eccc216a6d50ccd4c3fe4153d49cdcb2 100644 (file)
@@ -510,7 +510,9 @@ func runList(cmd *base.Command, args []string) {
                a := &work.Action{}
                // TODO: Use pkgsFilter?
                for _, p := range pkgs {
-                       a.Deps = append(a.Deps, b.AutoAction(work.ModeInstall, work.ModeInstall, p))
+                       if len(p.GoFiles)+len(p.CgoFiles) > 0 {
+                               a.Deps = append(a.Deps, b.AutoAction(work.ModeInstall, work.ModeInstall, p))
+                       }
                }
                b.Do(a)
        }
diff --git a/src/cmd/go/testdata/script/mod_list_test.txt b/src/cmd/go/testdata/script/mod_list_test.txt
new file mode 100644 (file)
index 0000000..a99e4f3
--- /dev/null
@@ -0,0 +1,16 @@
+env GO111MODULE=on
+
+# go list -compiled -test must handle test-only packages
+# golang.org/issue/27097.
+go list -compiled -test
+stdout '^m$'
+stdout '^m\.test$'
+stdout '^m \[m\.test\]$'
+
+-- go.mod --
+module m
+
+-- x_test.go --
+package x
+import "testing"
+func Test(t *testing.T) {}