]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/go: set Incomplete field on go list output if no files match embed
authorMichael Matloob <matloob@golang.org>
Sat, 16 Jan 2021 00:18:34 +0000 (19:18 -0500)
committerMichael Matloob <matloob@golang.org>
Wed, 20 Jan 2021 17:38:12 +0000 (17:38 +0000)
If no files match the embed pattern, the Error field will be set on
the package output by go list. Also set the Incomplete field for
consistency.

Fixes #43727

Change-Id: I5b4bb2a03a751269641a9bc4ef1d0fa0e37d46aa
Reviewed-on: https://go-review.googlesource.com/c/go/+/284257
Trust: Michael Matloob <matloob@golang.org>
Run-TryBot: Michael Matloob <matloob@golang.org>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Bryan C. Mills <bcmills@google.com>
src/cmd/go/internal/load/pkg.go
src/cmd/go/testdata/script/embed.txt

index 92dd7948715deb7379de65a2be3f8c349c9b7b58..3f67927111123fb479199684bf5e0066eab3108d 100644 (file)
@@ -1809,6 +1809,7 @@ func (p *Package) load(ctx context.Context, path string, stk *ImportStack, impor
 
        p.EmbedFiles, p.Internal.Embed, err = resolveEmbed(p.Dir, p.EmbedPatterns)
        if err != nil {
+               p.Incomplete = true
                setError(err)
                embedErr := err.(*EmbedError)
                p.Error.setPos(p.Internal.Build.EmbedPatternPos[embedErr.Pattern])
index 2ad799b7a7caf6540312c775af0d4d006ad3593a..6ad42e9cd18c3894931eeb25c47bba17fde519b2 100644 (file)
@@ -46,6 +46,8 @@ stderr '^x.go:5:12: pattern [*]t: cannot embed directory t: contains no embeddab
 cp x.txt t/.git
 ! go build -x
 stderr '^x.go:5:12: pattern [*]t: cannot embed directory t: contains no embeddable files$'
+go list -e -f '{{.Incomplete}}'
+stdout 'true'
 [symlink] symlink t/x.link -> ../x.txt
 [symlink] ! go build -x
 [symlink] stderr '^x.go:5:12: pattern [*]t: cannot embed directory t: contains no embeddable files$'