aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/go/alldocs.go
AgeCommit message (Collapse)Author
7 dayscmd/go: add compatibility tests for go mod tidy -diffSam Thanawalla
For #27005 Cq-Include-Trybots: luci.golang.try:gotip-linux-amd64-longtest,gotip-windows-amd64-longtest Change-Id: I90ab8c21222ac2189abb40e8c8e7549e2d940dd2 Reviewed-on: https://go-review.googlesource.com/c/go/+/587941 LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Michael Matloob <matloob@golang.org>
2024-05-22cmd/go: add go mod tidy -diffSam Thanawalla
The -diff flag causes tidy not to modify the files but instead print the necessary changes as a unified diff. It exits with a non-zero code if updates are needed. Fixes: #27005 Cq-Include-Trybots: luci.golang.try:gotip-linux-amd64-longtest,gotip-windows-amd64-longtest Change-Id: Ie239367f2fc73ecb55ec2ce76442293635c1b47d Reviewed-on: https://go-review.googlesource.com/c/go/+/585401 Reviewed-by: Michael Matloob <matloob@golang.org> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
2024-05-16cmd/go: add go telemetry command and GOTELEMETRY, GOTELEMETRYDIRMichael Matloob
Add the go telemetry command to support setting and viewing the telemetry mode. Also add the non-settable GOTELEMETRY and GOTELEMETRYDIR variables to go env, which contain the mode and telemetry dir. For #67111 Change-Id: Id7e89cefe30acfe3d865fa467315fe7cda975de9 Reviewed-on: https://go-review.googlesource.com/c/go/+/584535 Reviewed-by: Robert Findley <rfindley@google.com> Reviewed-by: Sam Thanawalla <samthanawalla@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
2024-05-16cmd/go: add -changed to query for non-defaults in the envqiulaidongfeng
Fixes #34208 Change-Id: I8ec2d96262dcd7cbf870f6173690143c54190722 GitHub-Last-Rev: 6543df4784cff1ba5751dc9885ef502e69679118 GitHub-Pull-Request: golang/go#65655 Reviewed-on: https://go-review.googlesource.com/c/go/+/563137 Reviewed-by: Alan Donovan <adonovan@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Michael Matloob <matloob@golang.org>
2024-05-15cmd/go: add support for godebug lines in go.mod and go.workRuss Cox
The fact that the go line sets both the language version and the GODEBUG compatibility version can be a problem, especially since the go line is also required to be ≥ the go lines of any required dependency modules. This change adds a new 'godebug' line to go.mod and go.work to allow setting the GODEBUG values for the entire module. It also adds a new meta-value default=go1.21 that means take the defaults from Go 1.21 no matter what the go line says. These were discussed in proposal #65573. Fixes #65573. Change-Id: I91746322a10178370ed1015ce5278372a024c824 Reviewed-on: https://go-review.googlesource.com/c/go/+/584476 Auto-Submit: Russ Cox <rsc@golang.org> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Sam Thanawalla <samthanawalla@google.com> Reviewed-by: Michael Matloob <matloob@golang.org>
2024-03-14cmd/go: update docs for go test -benchmemKévin Dunglas
Mention that the allocation counter doesn't count allocations made using C.malloc (cgo) or in C. Change-Id: I03c23b6d8cfde68c04a75732a0d3c05eedae2276 GitHub-Last-Rev: 2d805b3322327b73076a197628987ac874311664 GitHub-Pull-Request: golang/go#65430 Reviewed-on: https://go-review.googlesource.com/c/go/+/560397 Auto-Submit: Bryan Mills <bcmills@google.com> Reviewed-by: Cherry Mui <cherryyz@google.com> Reviewed-by: qiulaidongfeng <2645477756@qq.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Bryan Mills <bcmills@google.com>
2024-03-14Revert "cmd/go/internal/test: add 'tests' vet check to 'go test' suite"Michael Knyszek
This reverts commit f1d60500bcc48f06c8d322dac1e48dd4c22f5863. Reason for revert: Broke the longtest builders. Change-Id: I5f3510c8ffc24fae5e71fac0a2dbda01ecfe5d5c Cq-Include-Trybots: luci.golang.try:gotip-linux-amd64-longtest Reviewed-on: https://go-review.googlesource.com/c/go/+/571695 Reviewed-by: Alan Donovan <adonovan@google.com> Auto-Submit: Michael Knyszek <mknyszek@google.com> Reviewed-by: Russ Cox <rsc@golang.org> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
2024-03-14cmd/go/internal/test: add 'tests' vet check to 'go test' suiteAlan Donovan
The tests analyser reports structural problems in test declarations. Presumably most of these would be caught by go test itself, which compiles and runs (some subset of) the tests, but Benchmark and Fuzz functions are executed less frequently and may benefit more from static checks. Also, reflect the change in go test help message. + release note Fixes golang/go#44251 Change-Id: If5b9dee6d18fa0bc4de7f5f5f549eddeae953fc2 Reviewed-on: https://go-review.googlesource.com/c/go/+/529816 Reviewed-by: Ian Lance Taylor <iant@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Alan Donovan <adonovan@google.com>
2024-03-06cmd/dist,internal: add GOARM64 environment variableAndrey Bokhanko
Adds GOARM64 environment variable with accepted range of values "v8.{0-9}", "v9.{0-5}" and optional ",lse" and ",crypto" suffixes. Right now it doesn't affect anything, but can be used in the future to selectively target specific versions of different ARM64 hardware. For #60905 Change-Id: I6d530041b6931aa884e34f719f8ec41b1cb03ece Reviewed-on: https://go-review.googlesource.com/c/go/+/559555 LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Mauri de Souza Meneguzzo <mauri870@gmail.com> Reviewed-by: Cherry Mui <cherryyz@google.com> Reviewed-by: Shu-Chun Weng <scw@google.com> Reviewed-by: Fannie Zhang <Fannie.Zhang@arm.com>
2024-02-21cmd: remove support for GOROOT_FINALConstantin Konstantinidis
Fixes #62047 Change-Id: If7811c1eb9073fb09b7006076998f8b2e1810bfb Cq-Include-Trybots: luci.golang.try:gotip-linux-amd64-longtest,gotip-windows-amd64-longtest Reviewed-on: https://go-review.googlesource.com/c/go/+/539975 Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Bryan Mills <bcmills@google.com> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
2024-02-16cmd/go: show Sum/GoModSum when listing modulesSam Thanawalla
Fixes #52792 Tested: Ran go test cmd/go Change-Id: Ib7006256f4dca9e9fbfce266c00253c69595d6ab Cq-Include-Trybots: luci.golang.try:gotip-linux-amd64-longtest,gotip-windows-amd64-longtest Reviewed-on: https://go-review.googlesource.com/c/go/+/562775 Reviewed-by: Bryan Mills <bcmills@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
2024-01-29cmd/go: allow test caching for the -fullpath flagRaghvender
Change-Id: I5662b8ff617772ca2afec8bf419c468a3e69c392 Reviewed-on: https://go-review.googlesource.com/c/go/+/548996 Auto-Submit: Bryan Mills <bcmills@google.com> Reviewed-by: Bryan Mills <bcmills@google.com> Reviewed-by: Michael Matloob <matloob@golang.org> Run-TryBot: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org>
2024-01-24cmd/go: add GORISCV64 environment variableMark Ryan
The variable represents the RISC-V user-mode application profile for which to compile. Valid values are rva20u64 (the default) and rva22u64. Setting GORISCV64=rva20u64 defines the riscv64.rva20u64 build tag, sets the internal variable buildcfg.GORISCV64 to 20 and defines the macro GORISCV64_rva20u64 for use in assembly language code. Setting GORISCV64=rva22u64 defines the riscv64.rva20u64 and riscv64.rva22u64 build tags, sets the internal variable buildcfg.GORISCV64 to 22 and defines the macro GORISCV64_rva22u64 for use in assembly language code. This patch only provides a mechanism for the compiler and hand-coded assembly language functions to take advantage of the RISC-V extensions mandated by the application profiles. Further patches will be required to get the compiler/assembler and assembly language functions to actually generate and use these extensions. Fixes #61476 Change-Id: I9195ae6ee71703cd2112160e89157ab63b8391af Reviewed-on: https://go-review.googlesource.com/c/go/+/541135 Reviewed-by: M Zhuo <mengzhuo1203@gmail.com> Reviewed-by: Joel Sing <joel@sing.id.au> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Wang Yaduo <wangyaduo@linux.alibaba.com> Reviewed-by: Cherry Mui <cherryyz@google.com> Reviewed-by: Bryan Mills <bcmills@google.com> Run-TryBot: M Zhuo <mengzhuo1203@gmail.com> TryBot-Result: Gopher Robot <gobot@golang.org>
2023-12-19doc/go1.22,cmd/go: document that 'go mod init' no longer imports from other ↵Bryan C. Mills
vendoring tools This support was removed in CL 518776. For #61422. Fixes #53327. Change-Id: I8ad0f76aed5f03e32c4c2c5c0001c3f06beb3c7d Reviewed-on: https://go-review.googlesource.com/c/go/+/548877 Reviewed-by: Carlos Amedee <carlos@golang.org> Reviewed-by: Than McIntosh <thanm@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
2023-11-20all: add floating point option for ARM targetsLudi Rehak
This change introduces new options to set the floating point mode on ARM targets. The GOARM version number can optionally be followed by ',hardfloat' or ',softfloat' to select whether to use hardware instructions or software emulation for floating point computations, respectively. For example, GOARM=7,softfloat. Previously, software floating point support was limited to GOARM=5. With these options, software floating point is now extended to all ARM versions, including GOARM=6 and 7. This change also extends hardware floating point to GOARM=5. GOARM=5 defaults to softfloat and GOARM=6 and 7 default to hardfloat. For #61588 Change-Id: I23dc86fbd0733b262004a2ed001e1032cf371e94 Reviewed-on: https://go-review.googlesource.com/c/go/+/514907 Run-TryBot: Michael Knyszek <mknyszek@google.com> Reviewed-by: Michael Knyszek <mknyszek@google.com> Reviewed-by: Keith Randall <khr@golang.org> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Keith Randall <khr@google.com> Auto-Submit: Michael Knyszek <mknyszek@google.com>
2023-10-30cmd/go/internal/help: update the documentation to match the design and ↵Quan Tong
implementation The existing documentation imply that the build constraints should be ignored after a block comments, but actually it's not. Fixes #63502 Change-Id: I0597934b7a7eeab8908bf06e1312169b3702bf05 Reviewed-on: https://go-review.googlesource.com/c/go/+/535635 Reviewed-by: Michael Matloob <matloob@golang.org> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Bryan Mills <bcmills@google.com> Reviewed-by: Mark Pictor <mark.pictor@contrastsecurity.com> Auto-Submit: Bryan Mills <bcmills@google.com> Reviewed-by: Ian Lance Taylor <iant@google.com>
2023-09-20cmd/go: improve go build documentationKirill Che
The existing documentation for `go help build` does not match the current behavior of `go build`. This commit fixes inconsistency between documentation and behavior as suggested in #60836 ticket. Fixes #60836 Change-Id: I22f24f84815f50fecfa8c51b7f1c24e8e0cd8bc8 GitHub-Last-Rev: 7613930a3d6eb10fc61f29e4bf1b7b0fc9584cf8 GitHub-Pull-Request: golang/go#61438 Reviewed-on: https://go-review.googlesource.com/c/go/+/511015 Reviewed-by: qiulaidongfeng <2645477756@qq.com> Auto-Submit: Bryan Mills <bcmills@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Bryan Mills <bcmills@google.com> Reviewed-by: Matthew Dempsky <mdempsky@google.com>
2023-09-05all: use ^TestName$ regular pattern for invoking a single testDmitri Shuralyov
Use ^ and $ in the -run flag regular expression value when the intention is to invoke a single named test. This removes the reliance on there not being another similarly named test to achieve the intended result. In particular, package syscall has tests named TestUnshareMountNameSpace and TestUnshareMountNameSpaceChroot that both trigger themselves setting GO_WANT_HELPER_PROCESS=1 to run alternate code in a helper process. As a consequence of overlap in their test names, the former was inadvertently triggering one too many helpers. Spotted while reviewing CL 525196. Apply the same change in other places to make it easier for code readers to see that said tests aren't running extraneous tests. The unlikely cases of -run=TestSomething intentionally being used to run all tests that have the TestSomething substring in the name can be better written as -run=^.*TestSomething.*$ or with a comment so it is clear it wasn't an oversight. Change-Id: Iba208aba3998acdbf8c6708e5d23ab88938bfc1e Reviewed-on: https://go-review.googlesource.com/c/go/+/524948 Reviewed-by: Tobias Klauser <tobias.klauser@gmail.com> Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Reviewed-by: Ian Lance Taylor <iant@google.com> Reviewed-by: Kirill Kolyshkin <kolyshkin@gmail.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
2023-08-29runtime, cmd/go: enable address sanitizer on linux/loong64Xiaolin Zhao
The recently released llvm-16/LoongArch already supports the asan feature; but gcc13/LoongArch does not yet fully support the asan feature, and asan will be fully supported in gcc14. Change-Id: I48a65f2f10e3dc488acd9c02ea1a1f37de192be0 Reviewed-on: https://go-review.googlesource.com/c/go/+/481317 Reviewed-by: Ian Lance Taylor <iant@google.com> Reviewed-by: abner chenc <chenguoqi@loongson.cn> Reviewed-by: Bryan Mills <bcmills@google.com> Run-TryBot: Bryan Mills <bcmills@google.com> Reviewed-by: Meidan Li <limeidan@loongson.cn> TryBot-Result: Gopher Robot <gobot@golang.org> Commit-Queue: Ian Lance Taylor <iant@google.com> Auto-Submit: Ian Lance Taylor <iant@google.com>
2023-08-25runtime, cmd/go: enable memory sanitizer on linux/loong64Xiaolin Zhao
The msan feature depends on llvm. The currently released llvm-16 already supports the LoongArch architecture, and msan's support for LoongArch64 has been added in this patch[1], and it has been merged in branches main and release/17.x. [1]: https://reviews.llvm.org/D140528 Change-Id: If537c5ffb1c9d4b3316b9b3794d411953bc5764b Reviewed-on: https://go-review.googlesource.com/c/go/+/481315 Reviewed-by: Ian Lance Taylor <iant@google.com> Auto-Submit: Ian Lance Taylor <iant@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Bryan Mills <bcmills@google.com> Reviewed-by: abner chenc <chenguoqi@loongson.cn> Run-TryBot: Ian Lance Taylor <iant@google.com> Run-TryBot: WANG Xuerui <git@xen0n.name>
2023-08-16cmd/go: delete GOPATH-mode getRuss Cox
We've decided to keep basic GOPATH mode running for trees that already exist, but GOPATH-mode get is being removed. It is old and not useful and probably full of security holes. See #60915 for more details. Fixes #60915. Change-Id: I9db4c445579bf0b79f6543624602652555b66c1d Reviewed-on: https://go-review.googlesource.com/c/go/+/518775 Auto-Submit: Russ Cox <rsc@golang.org> Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Bryan Mills <bcmills@google.com>
2023-07-24cmd/go: add support for vendoring in workspace modeMichael Matloob
In most cases this change removes assumptions that there is a single main module in vendor mode and iterates over the workspace modules when doing checks. The go mod vendor command will now, if in workspace mode, create a vendor directory in the same directory as the go.work file, containing the packages (and modules in modules.txt) loaded from the workspace. When reassembling the module graph from the vendor directory, an edges are added from each of the main modules to their requirements, plus additionally to a fake 'vendor/modules.txt' module with edges to all the modules listed in vendor/modules.txt. For #60056 Change-Id: I4a485bb39836e7ab35cdc7726229191c6599903e Reviewed-on: https://go-review.googlesource.com/c/go/+/495801 Reviewed-by: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Michael Matloob <matloob@golang.org>
2023-06-06cmd/go: document changes to go test -c and -oRuss Cox
This was missing from CL 466397. For #15513. Change-Id: I138b7d76842815f4e702d7fe551aa8968097f75b Reviewed-on: https://go-review.googlesource.com/c/go/+/500955 Reviewed-by: Michael Matloob <matloob@golang.org> TryBot-Bypass: Russ Cox <rsc@golang.org>
2023-06-06cmd/go: handle -C properly during toolchain switchesRuss Cox
The -C dir flag was added in Go 1.20. This CL adds a new restriction: the -C must appear as the first flag on the command line. This restriction makes finding the -C flag robust and matches the general way people tend to think about and use the -C flag anyway. It may break a few scripts that have been written since Go 1.20 but hopefully they will not be hard to find and fix. (There is no strict compatibility guarantee for the command line.) For #57001. Change-Id: Ice2e5982c58d41eabdaef42a80d3624cde2c9873 Reviewed-on: https://go-review.googlesource.com/c/go/+/500915 TryBot-Bypass: Russ Cox <rsc@golang.org> Reviewed-by: Michael Matloob <matloob@golang.org>
2023-06-06cmd/go: additional doc-inspired tests and bug fixesRuss Cox
Additional tests and bug fixes realized while writing go.dev/doc/gotoolchain (CL 500775). - Handle go get toolchain@go1.22 (resolve to latest patch release, same as go get go@1.22). (See modload/query.go and gover/mod.go.) - Handle go get go@patch toolchain@patch. (See modload/query.go and gover/mod.go.) - Remove prefix-goVERSION-suffix form for toolchain name, standardizing on goVERSION-suffix. I have no good explanation for having two forms, so simplify to one. (See vendor and gover.) - Fail toolchain downloads when GOSUMDB=off. Because toolchain downloads cannot always be predicted (especially during switching rather than selection), they cannot be listed in go.sum. We rely on the checksum database for integrity of the download, especially if proxied. If the checksum database is disabled, this integrity check won't happen, so fail toolchain downloads. (See modfetch/sumdb.go and script/gotoolchain_net.txt) - Use names from documentation in package toolchain (Select, Switch; SwitchTo renamed to Exec to avoid both names; reqs.go renamed to switch.go; toolchain.go renamed to select.go.) - Make "go env GOTOOLCHAIN" and "go env -w GOTOOLCHAIN" work even when GOTOOLCHAIN is misconfigured. (See special case at top of Select in select.go.) - Clarify what goInstallVersion does (report whether this is go install or go run pkg@version) and explain the potential version switch more clearly. Use the Switcher directly instead of reimplementing it. (See select.go.) - Document go@ and toolchain@ forms in go help get, linking to go.dev/doc/toolchain. (See modget/get.go.) - Update URL of documentation in $GOROOT/go.env. For #57001. Change-Id: I895ef3519ff95db8710ed23b36ebaf4f648120cb Reviewed-on: https://go-review.googlesource.com/c/go/+/500797 Reviewed-by: Michael Matloob <matloob@golang.org> Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Bypass: Russ Cox <rsc@golang.org>
2023-06-06cmd/go: document GOTOOLCHAINRuss Cox
For #57001. Change-Id: I74c4abd675bd5636a029332b45ef0e6fdc36106f Reviewed-on: https://go-review.googlesource.com/c/go/+/500795 TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Russ Cox <rsc@golang.org> Reviewed-by: Michael Matloob <matloob@golang.org>
2023-06-03cmd/go: maintain go and toolchain lines in go.workRuss Cox
go work init / sync / use need to maintain the invariant that the go version and toolchain in go.work are up-to-date with respect to the modules in the workspace. go get also preserves the invariant when running in a module. go work use (including with no arguments) reestablishes the invariant. Replaces the ToolchainTrySwitch func in PackageOpts with a new gover.Switcher interface implemented by toolchain.Switcher. Until now, the basic sketch of a particular phase of the go command has been to call base.Error repeatedly, to report as many problems as possible, and then call base.ExitIfErrors at strategic places where continuing in the presence of errors is no longer possible. A Switcher is similar: you call sw.Error repeatedly and then, when all the errors from a given phase have been identified, call sw.Switch to potentially switch toolchains, typically before calling base.ExitIfErrors. One effect of the regularization of errors reported by the modload.loader is to add a "go: " prefix to errors showing import stacks. That seems fine. For #57001. Change-Id: Id49ff7a28a969d3475c70e6a09d40d7aa529afa8 Reviewed-on: https://go-review.googlesource.com/c/go/+/499984 Run-TryBot: Russ Cox <rsc@golang.org> Reviewed-by: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org>
2023-05-27cmd/go: update cover flag documentationEnrico Candino
Cover flag documentation was not up to date, and the -covermode flag documentation was missing. Fixes #60438 Change-Id: I11e769fa2a32d074de7a748aa534afdfe2ca4e78 Reviewed-on: https://go-review.googlesource.com/c/go/+/498415 TryBot-Result: Gopher Robot <gobot@golang.org> Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org> Reviewed-by: Than McIntosh <thanm@google.com> Run-TryBot: Dmitri Shuralyov <dmitshur@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
2023-05-26cmd/go: remove stray reference to mkalldocs.shThan McIntosh
Clean up a stray reference in the docs to 'mkalldocs.sh', which no longer exists (was replaced by a Go program, in 676794f73e). Change-Id: I058e86395b14756d7afc184f99f89dbc5ba0184e Reviewed-on: https://go-review.googlesource.com/c/go/+/498715 Reviewed-by: Bryan Mills <bcmills@google.com> Run-TryBot: Than McIntosh <thanm@google.com> Auto-Submit: Than McIntosh <thanm@google.com> TryBot-Result: Gopher Robot <gobot@golang.org>
2023-05-24cmd/go: add mod edit -toolchain and work edit -toolchainRuss Cox
We have added a new toolchain directive in go.mod and go.work. This CL adds support in mod edit and work edit for changing the toolchain line. For #57001. Change-Id: I36a960796630a359b8a587877cb9548c299d5c87 Reviewed-on: https://go-review.googlesource.com/c/go/+/497296 TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Bryan Mills <bcmills@google.com> Run-TryBot: Russ Cox <rsc@golang.org>
2023-05-20cmd/go: update help for empty environment variablesSean Liao
Fixes #50335 Change-Id: I44b9dc6afa8c70b5cc8c79fb3ebddc3f45d3cef8 Reviewed-on: https://go-review.googlesource.com/c/go/+/475695 Auto-Submit: Ian Lance Taylor <iant@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Bryan Mills <bcmills@google.com> Reviewed-by: Ian Lance Taylor <iant@google.com> Run-TryBot: Ian Lance Taylor <iant@google.com>
2023-05-10cmd/go/internal: update documentation of go test and go generateShogo Hida
Fixes #57050 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>
2023-04-06cmd/go: improve packages help descriptionOleksandr Redko
Clarify that 'action' is not the valid 'go' command. Change-Id: I0a77722c46a3dc56f81c5e6e177e0c73bc60adc2 Reviewed-on: https://go-review.googlesource.com/c/go/+/482455 Run-TryBot: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Bryan Mills <bcmills@google.com> Auto-Submit: Bryan Mills <bcmills@google.com> Reviewed-by: Michael Knyszek <mknyszek@google.com>
2023-03-31doc: add godebug.md, documenting GODEBUGRuss Cox
Document the changes to GODEBUG implemented as part of proposal #56986. Fixes #56986. Change-Id: I23153a123e23820c5b22db4767620e037bbdd083 Reviewed-on: https://go-review.googlesource.com/c/go/+/462202 Reviewed-by: Damien Neil <dneil@google.com> Run-TryBot: Russ Cox <rsc@golang.org> Reviewed-by: Ian Lance Taylor <iant@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Auto-Submit: Russ Cox <rsc@golang.org>
2023-03-29cmd/go: change +build doc references to //go:buildJeff Hodges
This changes a few references to `+build` into the modern `//go:build`. It was compiled by editing `cmd/go/internal/list/context.go`, running `go test cmd/go -v -run=TestDocsUpToDate -fixdocs`, and then editing list.go and build.go by hand. Change-Id: I00fec55e098bf5100f5a186dd975a6628e15beb8 GitHub-Last-Rev: e0eb9be77e9e409479ef48a65f750546d2a9ddcc GitHub-Pull-Request: golang/go#59245 Reviewed-on: https://go-review.googlesource.com/c/go/+/479417 Run-TryBot: Ian Lance Taylor <iant@google.com> Reviewed-by: Matthew Dempsky <mdempsky@google.com> Auto-Submit: Ian Lance Taylor <iant@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@google.com>
2023-03-22cmd/go: enable -pgo=auto by defaultCherry Mui
Updates #58099. Updates #55022. Change-Id: I32eacdf9f008d16566e0b30230ecc25d110a9811 Reviewed-on: https://go-review.googlesource.com/c/go/+/474236 Run-TryBot: Cherry Mui <cherryyz@google.com> Reviewed-by: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Michael Pratt <mpratt@google.com>
2023-03-13cmd/go: unify the format of the go help xxx commandcui fliter
Fixes #58871 Updates #58871 Change-Id: I947b71083e9559859b3ae6e17b5daad03a976707 Reviewed-on: https://go-review.googlesource.com/c/go/+/474375 Run-TryBot: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Cherry Mui <cherryyz@google.com> Reviewed-by: Bryan Mills <bcmills@google.com> Auto-Submit: Bryan Mills <bcmills@google.com>
2023-03-06cmd/go: support multiple main packages with -pgo=autoCherry Mui
In -pgo=auto mode, the go command finds a profile named default.pgo in the main package's directly, and if found, use it as the profile for the build. Currently we only support a single main package when -pgo=auto is used. When multiple main packages are included in a build, they may have different default profiles (or some have profiles whereas some don't), so a common dependent package would need to be built multiple times, with different profiles (or lack of). This CL handles this. To do so, we need to split (unshare) the dependency graph so they can attach different profiles. Fixes #58099. Change-Id: I1ad21361967aafbf5089d8d5e89229f95fe31276 Reviewed-on: https://go-review.googlesource.com/c/go/+/472358 Reviewed-by: Michael Pratt <mpratt@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Cherry Mui <cherryyz@google.com> Reviewed-by: Bryan Mills <bcmills@google.com>
2023-02-27cmd/go: convert mkalldocs.sh to a Go programBryan C. Mills
mkalldocs.sh required a Unix shell, making it less accessible for contributors on Windows. It also used a substantially different codepath to regenerate the file than the one used to check the file for staleness, making failures in TestDocsUpToDate more complex to diagnose. We can solve both of those problems by using the same technique as in checkScriptReadme: use the test itself as the generator to update the file. The test is already written in Go, the test binary already knows how to mimic the 'go' command, and this approach brings the difference between the test and the generator down to a single flag check. Updates #26735. Change-Id: I7c6f65cb0e0c29e334e38a45412e0a73c4d31d42 Reviewed-on: https://go-review.googlesource.com/c/go/+/468636 Reviewed-by: Alan Donovan <adonovan@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Bryan Mills <bcmills@google.com> Auto-Submit: Bryan Mills <bcmills@google.com>
2023-02-27cmd/go: reject list when -find and -export are used togetherRenKanai
Fixes #51952. Change-Id: If2cfc41d65373ca38cfb7b0396be8988d444eb5e Reviewed-on: https://go-review.googlesource.com/c/go/+/396074 Run-TryBot: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: David Chase <drchase@google.com> Reviewed-by: Bryan Mills <bcmills@google.com> Auto-Submit: Bryan Mills <bcmills@google.com> Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
2023-02-23cmd/go: enable vet directive analyzer during 'go test'Russ Cox
For #56986, run the new directive analyzer during 'go test', to diagnose problems that would otherwise be missed, like //go:debug appearing in the wrong place in a file or in the wrong files. Change-Id: I1ac230c3c67e58b5e584128e0ec6ff482cb225f9 Reviewed-on: https://go-review.googlesource.com/c/go/+/464135 Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Alan Donovan <adonovan@google.com>
2023-02-23cmd/go: set default GODEBUG for main packagesRuss Cox
For #56986, change the go command to compute and set the default GODEBUG settings for each main package, based on the work module's go version and the //go:debug lines in the main package. Change-Id: I2118cf0ae6d981138138661e02120c05af648872 Reviewed-on: https://go-review.googlesource.com/c/go/+/453605 Run-TryBot: Russ Cox <rsc@golang.org> Reviewed-by: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org>
2023-02-22testing: add -fullpath to go testHossein Zolfi
When -test.fullpath flag is provided to go test, go test displays the full file names in error messages. Fixes #37708 Change-Id: I6096e75ed816fd42205810f20624e495047a73a2 Reviewed-on: https://go-review.googlesource.com/c/go/+/463837 Reviewed-by: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Auto-Submit: Bryan Mills <bcmills@google.com> Reviewed-by: Than McIntosh <thanm@google.com> Run-TryBot: Bryan Mills <bcmills@google.com>
2023-01-17cmd/go: document GODEBUG=installgoroot=allRuss Cox
At the moment the only documentation is the release notes, but everything mentioned in the release notes should have proper documentation separate from them. Change-Id: I9885962f6c6d947039b0be59b608385781479271 Reviewed-on: https://go-review.googlesource.com/c/go/+/462196 TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Russ Cox <rsc@golang.org> Reviewed-by: Bryan Mills <bcmills@google.com>
2022-11-22cmd/go: document new architecture feature build tagsRuss Cox
Also mention in release notes. Change-Id: Ifddfc6d2fdaae07c0774ad917838b0fdf9c0b0fe Reviewed-on: https://go-review.googlesource.com/c/go/+/452559 Reviewed-by: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Russ Cox <rsc@golang.org>
2022-11-16cmd/go: add PGO auto modeCherry Mui
Add "auto" mode for the -pgo build flag. When -pgo=auto is specified, if there is a default.pgo file in the directory of the main package, it will be selected and used for the build. Currently it requires exactly one main package when -pgo=auto is specified. (We'll support multiple main packages in the future.) Also apply to other build-related subcommands, "go install", "go run", "go test", and "go list". For #55022. Change-Id: Iab7974ab8932daf0e83506de505e044a8e412466 Reviewed-on: https://go-review.googlesource.com/c/go/+/438737 TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Bryan Mills <bcmills@google.com> Run-TryBot: Bryan Mills <bcmills@google.com>
2022-11-10cmd/go: enable -x in go mod graphianwoolf
Updates #35849 Change-Id: Ifa18e448c0d436c18d7204ac755cd36bc28cd612 Reviewed-on: https://go-review.googlesource.com/c/go/+/448935 Reviewed-by: Bryan Mills <bcmills@google.com> Run-TryBot: Bryan Mills <bcmills@google.com> Auto-Submit: Bryan Mills <bcmills@google.com> Reviewed-by: Michael Knyszek <mknyszek@google.com> TryBot-Result: Gopher Robot <gobot@golang.org>
2022-11-10cmd/go: enable -x in go mod tidyianwoolf
Updates #35849 Change-Id: I8b40a2de6a05880a9f939349a714b631888f5f94 Reviewed-on: https://go-review.googlesource.com/c/go/+/448915 Reviewed-by: Bryan Mills <bcmills@google.com> Auto-Submit: Bryan Mills <bcmills@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Michael Knyszek <mknyszek@google.com> Run-TryBot: Bryan Mills <bcmills@google.com>
2022-11-08cmd/go: add -pgo build flagCherry Mui
Add a -pgo flag for "go build" (and other build actions), to specify the file path of a profile used for PGO. Special name "off" turns off PGO. The given profile path is passed to the compiler. The build cache is sensitive to the content of the given PGO profile. TODO: auto mode. For #55022. Change-Id: Ieee1b131b4c041f9502fd0a1acf112f3e44246be Reviewed-on: https://go-review.googlesource.com/c/go/+/438736 TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Cherry Mui <cherryyz@google.com> Reviewed-by: Michael Pratt <mpratt@google.com> Reviewed-by: Bryan Mills <bcmills@google.com>
2022-11-03cmd/go: add -C flagRuss Cox
The -C flag is like tar -C or make -C: it changes to the named directory early in command startup, before anything else happens. Fixes #50332. Change-Id: I8e4546f69044cb3a028d4d26dfba482b08cb845d Reviewed-on: https://go-review.googlesource.com/c/go/+/421436 Reviewed-by: Bryan Mills <bcmills@google.com> Auto-Submit: Russ Cox <rsc@golang.org> TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Russ Cox <rsc@golang.org>