Description
Summary
go mod download -json
still returns a valid json when the command fails.
For example, if you run go mod download -json github.com/alsdkfjjsdkfjk/[email protected]
then Stdout receives a valid json with the error message saying "module not found".
However, say you have a private repo you'd like to go mod download -json
, but you haven't configured GOPRIVATE/GONOSUMDB correctly, then the command fails as expected, but the output is not json.
Digging a little more, I see that most sumdb-checking functions just call base.Fatalf
and not actually return an error.
Here's what I had to do to fix it: marwan-at-work@f143bce
I'd be happy to submit the commit above as a CL if it looks okay as a fix
What version of Go are you using (go version
)?
1.13
Does this issue reproduce with the latest release?
Yes
What did you do?
GONOSUMDB='' go mod download -json <private-repo>@<version>
What did you expect to see?
A valid json with the Error
field describing that the sumdb check has failed.
What did you see instead?
A non-valid-json with the expected error message