internal/report: use derrors package for error handling

Change-Id: Ifac57b9da8807ac5848b5e3b3243a7304e0506f8
Reviewed-on: https://go-review.googlesource.com/c/vulndb/+/359407
Trust: Julie Qiu <julie@golang.org>
Run-TryBot: Julie Qiu <julie@golang.org>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Roland Shoemaker <roland@golang.org>
diff --git a/internal/report/lint.go b/internal/report/lint.go
index 5bfdc08..0b9baab 100644
--- a/internal/report/lint.go
+++ b/internal/report/lint.go
@@ -16,6 +16,7 @@
 	"golang.org/x/mod/modfile"
 	"golang.org/x/mod/module"
 	"golang.org/x/mod/semver"
+	"golang.org/x/vulndb/internal/derrors"
 )
 
 // TODO: getting things from the proxy should all be cached so we
@@ -29,7 +30,8 @@
 	}
 }
 
-func getModVersions(module string) (map[string]bool, error) {
+func getModVersions(module string) (_ map[string]bool, err error) {
+	defer derrors.Wrap(&err, "getModVersions(%q)", module)
 	resp, err := http.Get(fmt.Sprintf("%s/%s/@v/list", proxyURL, module))
 	if err != nil {
 		return nil, err
@@ -46,7 +48,8 @@
 	return versions, nil
 }
 
-func getCanonicalModName(module string, version string) (string, error) {
+func getCanonicalModName(module string, version string) (_ string, err error) {
+	defer derrors.Wrap(&err, "getCanonicalModName(%q, %q)", module, version)
 	resp, err := http.Get(fmt.Sprintf("%s/%s/@v/%s.mod", proxyURL, module, version))
 	if err != nil {
 		return "", err
@@ -75,7 +78,8 @@
 	return strings.Count(v, "-") >= 2 && semver.IsValid(v) && pseudoVersionRE.MatchString(v)
 }
 
-func versionExists(version string, versions map[string]bool) error {
+func versionExists(version string, versions map[string]bool) (err error) {
+	defer derrors.Wrap(&err, "versionExists(%q, %v)", version, versions)
 	// TODO: for now, just skip pseudo-versions. at some point we should verify that
 	// it is a likely pseudo-version, i.e. one that could feasibly exist given the
 	// actual versions that we know about.
@@ -92,7 +96,8 @@
 	return nil
 }
 
-func checkModVersions(path string, vr []VersionRange) error {
+func checkModVersions(path string, vr []VersionRange) (err error) {
+	defer derrors.Wrap(&err, "checkModVersions(%q, vr)", path)
 	realVersions, err := getModVersions(path)
 	if err != nil {
 		return fmt.Errorf("unable to retrieve module versions from proxy: %s", err)