aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShogo Hida <shogo.hida@gmail.com>2023-05-10 14:41:06 +0000
committerGopher Robot <gobot@golang.org>2023-05-30 18:12:41 +0000
commited9db1d36ad6ef61095d5941ad9ee6da7ab6d05a (patch)
treebfb364961a9d930e300ecd7b398cb03975540bc7
parent29f34697a48ba244ac009f67ee53e40650bbfd2a (diff)
downloadgo-ed9db1d36ad6ef61095d5941ad9ee6da7ab6d05a.tar.gz
go-ed9db1d36ad6ef61095d5941ad9ee6da7ab6d05a.zip
[release-branch.go1.19] cmd/go/internal: update documentation of go test and go generate
For #57050. Fixes #60457. Change-Id: I46cac667ff78ac171c878f4366f8f01f58f1d27d GitHub-Last-Rev: 697c255ece18cd4772b76d62991474a7da2536d8 GitHub-Pull-Request: golang/go#57814 Reviewed-on: https://go-review.googlesource.com/c/go/+/461683 TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Run-TryBot: Dmitri Shuralyov <dmitshur@golang.org> Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org> Reviewed-by: Bryan Mills <bcmills@google.com> (cherry picked from commit 93d9035c9e8b129578d3a177fd90eb308e44a597) Reviewed-on: https://go-review.googlesource.com/c/go/+/499295 Run-TryBot: Dmitri Shuralyov <dmitshur@google.com> Auto-Submit: Dmitri Shuralyov <dmitshur@google.com>
-rw-r--r--src/cmd/go/alldocs.go9
-rw-r--r--src/cmd/go/internal/generate/generate.go5
-rw-r--r--src/cmd/go/internal/test/test.go4
3 files changed, 18 insertions, 0 deletions
diff --git a/src/cmd/go/alldocs.go b/src/cmd/go/alldocs.go
index a3c1fecb91..88d6c2d6bb 100644
--- a/src/cmd/go/alldocs.go
+++ b/src/cmd/go/alldocs.go
@@ -550,6 +550,11 @@
// generator, containing the Go toolchain and standard library.
// $DOLLAR
// A dollar sign.
+// $PATH
+// The $PATH of the parent process, with $GOROOT/bin
+// placed at the beginning. This causes generators
+// that execute 'go' commands to use the same 'go'
+// as the parent 'go generate' command.
//
// Other than variable substitution and quoted-string evaluation, no
// special processing such as "globbing" is performed on the command
@@ -1666,6 +1671,10 @@
// error. (The go command's standard error is reserved for printing
// errors building the tests.)
//
+// The go command places $GOROOT/bin at the beginning of $PATH
+// in the test's environment, so that tests that execute
+// 'go' commands use the same 'go' as the parent 'go test' command.
+//
// Go test runs in two different modes:
//
// The first, called local directory mode, occurs when go test is
diff --git a/src/cmd/go/internal/generate/generate.go b/src/cmd/go/internal/generate/generate.go
index 65e7148aa8..18d4a20952 100644
--- a/src/cmd/go/internal/generate/generate.go
+++ b/src/cmd/go/internal/generate/generate.go
@@ -89,6 +89,11 @@ Go generate sets several variables when it runs the generator:
generator, containing the Go toolchain and standard library.
$DOLLAR
A dollar sign.
+ $PATH
+ The $PATH of the parent process, with $GOROOT/bin
+ placed at the beginning. This causes generators
+ that execute 'go' commands to use the same 'go'
+ as the parent 'go generate' command.
Other than variable substitution and quoted-string evaluation, no
special processing such as "globbing" is performed on the command
diff --git a/src/cmd/go/internal/test/test.go b/src/cmd/go/internal/test/test.go
index 028db84cc4..4635558718 100644
--- a/src/cmd/go/internal/test/test.go
+++ b/src/cmd/go/internal/test/test.go
@@ -90,6 +90,10 @@ standard output, even if the test printed them to its own standard
error. (The go command's standard error is reserved for printing
errors building the tests.)
+The go command places $GOROOT/bin at the beginning of $PATH
+in the test's environment, so that tests that execute
+'go' commands use the same 'go' as the parent 'go test' command.
+
Go test runs in two different modes:
The first, called local directory mode, occurs when go test is