1
0
mirror of https://github.com/golang/go synced 2024-11-23 17:50:06 -07:00

cmd/go/internal/modcmd: skip modules with empty version strings

This CL restores behavior before CL 189797 and fixes a misleading
comment. modload.ListModules may return info without a version for the
main module and for modules replaced with local directories.

Fixes #35505

Change-Id: I5b4e68053a680ff897b072fdf6e7aa17b6e1ac34
Reviewed-on: https://go-review.googlesource.com/c/go/+/206538
Run-TryBot: Jay Conrod <jayconrod@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Bryan C. Mills <bcmills@google.com>
This commit is contained in:
Jay Conrod 2019-11-11 14:24:00 -05:00 committed by Bryan C. Mills
parent b1159bad99
commit d431804295
2 changed files with 20 additions and 4 deletions

View File

@ -89,7 +89,7 @@ func runDownload(cmd *base.Command, args []string) {
for _, arg := range args {
switch arg {
case modload.Target.Path, targetAtLatest, targetAtUpgrade, targetAtPatch:
os.Stderr.WriteString("go mod download: skipping argument "+ arg + " that resolves to the main module\n")
os.Stderr.WriteString("go mod download: skipping argument " + arg + " that resolves to the main module\n")
}
}
}
@ -102,9 +102,9 @@ func runDownload(cmd *base.Command, args []string) {
if info.Replace != nil {
info = info.Replace
}
if (module.Version{Path: info.Path, Version: info.Version} == modload.Target) {
// skipping main module.
// go mod download without dependencies is silent.
if info.Version == "" && info.Error == nil {
// main module or module replaced with file path.
// Nothing to download.
continue
}
m := &moduleJSON{

View File

@ -0,0 +1,16 @@
# This test checks that 'go mod download' produces no output for
# the main module (when specified implicitly) and for a module replaced
# with a file path.
# Verifies golang.org/issue/35505.
go mod download -json all
cmp stdout no-output
-- go.mod --
module example.com/a
require example.com/b v1.0.0
replace example.com/b => ./local/b
-- local/b/go.mod --
module example.com/b
-- no-output --