diff options
| author | Jay Conrod <jayconrod@google.com> | 2019-05-13 15:11:31 -0400 |
|---|---|---|
| committer | Jay Conrod <jayconrod@google.com> | 2019-05-30 21:42:16 +0000 |
| commit | a53b46557267492c8f5e6e285c8d4c415183cacf (patch) | |
| tree | ae519b39ead8d77ee4401ff4b83d15a0a81bced4 /src | |
| parent | 545cd82734258af78c53eaa58be0edfaedf9ca73 (diff) | |
| download | go-a53b46557267492c8f5e6e285c8d4c415183cacf.tar.xz | |
cmd/go: clarify documentation for 'go get -u'
Also: add a comment in internal/get.newUpgrader as a follow-up to
CL 177677.
Updates #26902
Change-Id: Ibce2807ecb44fa21697ca04a51c44ddca0f661d8
Reviewed-on: https://go-review.googlesource.com/c/go/+/176902
Reviewed-by: Bryan C. Mills <bcmills@google.com>
Run-TryBot: Bryan C. Mills <bcmills@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Diffstat (limited to 'src')
| -rw-r--r-- | src/cmd/go/alldocs.go | 9 | ||||
| -rw-r--r-- | src/cmd/go/internal/modget/get.go | 12 |
2 files changed, 15 insertions, 6 deletions
diff --git a/src/cmd/go/alldocs.go b/src/cmd/go/alldocs.go index a78766e228..2df97a429c 100644 --- a/src/cmd/go/alldocs.go +++ b/src/cmd/go/alldocs.go @@ -603,9 +603,12 @@ // The -t flag instructs get to consider modules needed to build tests of // packages specified on the command line. // -// The -u flag instructs get to update dependencies to use newer minor or -// patch releases when available. Continuing the previous example, -// 'go get -u A' will use the latest A with B v1.3.1 (not B v1.2.3). +// The -u flag instructs get to update modules providing dependencies +// of packages named on the command line to use newer minor or patch +// releases when available. Continuing the previous example, 'go get -u A' +// will use the latest A with B v1.3.1 (not B v1.2.3). If B requires module C, +// but C does not provide any packages needed to build packages in A +// (not including tests), then C will not be updated. // // The -u=patch flag (not -u patch) also instructs get to update dependencies, // but changes the default to select patch releases. diff --git a/src/cmd/go/internal/modget/get.go b/src/cmd/go/internal/modget/get.go index 0babfba390..e2c4c105dd 100644 --- a/src/cmd/go/internal/modget/get.go +++ b/src/cmd/go/internal/modget/get.go @@ -77,9 +77,12 @@ those requirements by taking the maximum requested version.) The -t flag instructs get to consider modules needed to build tests of packages specified on the command line. -The -u flag instructs get to update dependencies to use newer minor or -patch releases when available. Continuing the previous example, -'go get -u A' will use the latest A with B v1.3.1 (not B v1.2.3). +The -u flag instructs get to update modules providing dependencies +of packages named on the command line to use newer minor or patch +releases when available. Continuing the previous example, 'go get -u A' +will use the latest A with B v1.3.1 (not B v1.2.3). If B requires module C, +but C does not provide any packages needed to build packages in A +(not including tests), then C will not be updated. The -u=patch flag (not -u patch) also instructs get to update dependencies, but changes the default to select patch releases. @@ -757,6 +760,9 @@ func newUpgrader(cmdline map[string]*query, pkgs map[string]bool) *upgrader { work = work[1:] m := modload.PackageModule(pkg) u.upgrade[m.Path] = true + + // testImports is empty unless test imports were actually loaded, + // i.e., -t was set or "all" was one of the arguments. imports, testImports := modload.PackageImports(pkg) for _, imp := range imports { add(imp) |
