mirror of
https://github.com/golang/go
synced 2024-11-23 14:40:02 -07:00
cmd/go: report loading errors from 'go mod tidy' and 'go mod vendor'
Fixes #27063 Change-Id: Iedd14fd614a3d79d1387b923a0f123c2bc9e0b33 Reviewed-on: https://go-review.googlesource.com/c/go/+/188763 Run-TryBot: Bryan C. Mills <bcmills@google.com> Reviewed-by: Jay Conrod <jayconrod@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
This commit is contained in:
parent
316ac4f330
commit
07b3e629ce
@ -387,11 +387,13 @@ func loadAll(testAll bool) []string {
|
||||
|
||||
var paths []string
|
||||
for _, pkg := range loaded.pkgs {
|
||||
if e, ok := pkg.err.(*ImportMissingError); ok && e.Module.Path == "" {
|
||||
continue // Package doesn't actually exist.
|
||||
if pkg.err != nil {
|
||||
base.Errorf("%s: %v", pkg.stackText(), pkg.err)
|
||||
continue
|
||||
}
|
||||
paths = append(paths, pkg.path)
|
||||
}
|
||||
base.ExitIfErrors()
|
||||
return paths
|
||||
}
|
||||
|
||||
|
39
src/cmd/go/testdata/script/mod_tidy_error.txt
vendored
Normal file
39
src/cmd/go/testdata/script/mod_tidy_error.txt
vendored
Normal file
@ -0,0 +1,39 @@
|
||||
env GO111MODULE=on
|
||||
|
||||
# Regression test for golang.org/issue/27063:
|
||||
# 'go mod tidy' and 'go mod vendor' should not hide loading errors.
|
||||
|
||||
! go mod tidy
|
||||
stderr '^issue27063 imports\n\tnonexist: malformed module path "nonexist": missing dot in first path element'
|
||||
stderr '^issue27063 imports\n\tnonexist.example.com: cannot find module providing package nonexist.example.com'
|
||||
stderr '^issue27063 imports\n\tissue27063/other imports\n\tother.example.com/nonexist: cannot find module providing package other.example.com/nonexist'
|
||||
|
||||
! go mod vendor
|
||||
stderr '^issue27063 imports\n\tnonexist: malformed module path "nonexist": missing dot in first path element'
|
||||
stderr '^issue27063 imports\n\tnonexist.example.com: cannot find module providing package nonexist.example.com'
|
||||
stderr '^issue27063 imports\n\tissue27063/other imports\n\tother.example.com/nonexist: cannot find module providing package other.example.com/nonexist'
|
||||
|
||||
-- go.mod --
|
||||
module issue27063
|
||||
|
||||
go 1.13
|
||||
|
||||
require issue27063/other v0.0.0
|
||||
replace issue27063/other => ./other
|
||||
-- x.go --
|
||||
package main
|
||||
|
||||
import (
|
||||
"nonexist"
|
||||
|
||||
"nonexist.example.com"
|
||||
"issue27063/other"
|
||||
)
|
||||
|
||||
func main() {}
|
||||
-- other/go.mod --
|
||||
module issue27063/other
|
||||
-- other/other.go --
|
||||
package other
|
||||
|
||||
import "other.example.com/nonexist"
|
6
src/cmd/go/testdata/script/mod_vendor.txt
vendored
6
src/cmd/go/testdata/script/mod_vendor.txt
vendored
@ -171,12 +171,6 @@ package m
|
||||
|
||||
import _ "appengine"
|
||||
import _ "appengine/datastore"
|
||||
-- nonexistent.go --
|
||||
// +build alternatereality
|
||||
|
||||
package m
|
||||
|
||||
import _ "nonexistent.rsc.io"
|
||||
-- mypkg/go.mod --
|
||||
module me
|
||||
-- mypkg/mydir/d.go --
|
||||
|
Loading…
Reference in New Issue
Block a user