all: fix issues found by staticcheck
Staticcheck still has issues on trybots, but it can find things locally.
Until we fully enable, we fix issues it finds locally.
Change-Id: Ia9f587e756281832d3300ae2ea1a1d2c53096528
Reviewed-on: https://go-review.googlesource.com/c/pkgsite-metrics/+/477356
Run-TryBot: Zvonimir Pavlinovic <zpavlinovic@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Jonathan Amsterdam <jba@google.com>
diff --git a/cmd/govulncheck_sandbox/govulncheck_sandbox_test.go b/cmd/govulncheck_sandbox/govulncheck_sandbox_test.go
index 0c993b2..469b0f2 100644
--- a/cmd/govulncheck_sandbox/govulncheck_sandbox_test.go
+++ b/cmd/govulncheck_sandbox/govulncheck_sandbox_test.go
@@ -77,7 +77,7 @@
t.Run("binary", func(t *testing.T) {
t.Skip("govulncheck may not support the Go version")
const binary = "testdata/module/vuln"
- cmd := exec.Command("go build")
+ cmd := exec.Command("go", "build")
cmd.Dir = "testdata/module"
if _, err := cmd.Output(); err != nil {
t.Fatal(derrors.IncludeStderr(err))
diff --git a/go.mod b/go.mod
index bb727ec..3d247e4 100644
--- a/go.mod
+++ b/go.mod
@@ -7,7 +7,6 @@
cloud.google.com/go/bigquery v1.43.0
cloud.google.com/go/cloudtasks v1.8.0
cloud.google.com/go/errorreporting v0.1.0
- cloud.google.com/go/logging v1.6.1
cloud.google.com/go/secretmanager v1.9.0
cloud.google.com/go/storage v1.27.0
github.com/GoogleCloudPlatform/opentelemetry-operations-go v1.0.0
@@ -39,7 +38,6 @@
cloud.google.com/go/compute v1.12.1 // indirect
cloud.google.com/go/compute/metadata v0.2.1 // indirect
cloud.google.com/go/iam v0.7.0 // indirect
- cloud.google.com/go/longrunning v0.3.0 // indirect
cloud.google.com/go/monitoring v1.8.0 // indirect
cloud.google.com/go/trace v1.4.0 // indirect
github.com/BurntSushi/toml v0.3.1 // indirect
diff --git a/go.sum b/go.sum
index f39e849..5b770e9 100644
--- a/go.sum
+++ b/go.sum
@@ -54,10 +54,7 @@
cloud.google.com/go/errorreporting v0.1.0/go.mod h1:cZSiBMvrnl0X13pD9DwKf9sQ8Eqy3EzHqkyKBZxiIrM=
cloud.google.com/go/iam v0.7.0 h1:k4MuwOsS7zGJJ+QfZ5vBK8SgHBAvYN/23BWsiihJ1vs=
cloud.google.com/go/iam v0.7.0/go.mod h1:H5Br8wRaDGNc8XP3keLc4unfUUZeyH3Sfl9XpQEYOeg=
-cloud.google.com/go/logging v1.6.1 h1:ZBsZK+JG+oCDT+vaxwqF2egKNRjz8soXiS6Xv79benI=
-cloud.google.com/go/logging v1.6.1/go.mod h1:5ZO0mHHbvm8gEmeEUHrmDlTDSu5imF6MUP9OfilNXBw=
cloud.google.com/go/longrunning v0.3.0 h1:NjljC+FYPV3uh5/OwWT6pVU+doBqMg2x/rZlE+CamDs=
-cloud.google.com/go/longrunning v0.3.0/go.mod h1:qth9Y41RRSUE69rDcOn6DdK3HfQfsUI0YSmW3iIlLJc=
cloud.google.com/go/monitoring v1.2.0/go.mod h1:tE8I08OzjWmXLhCopnPaUDpfGOEJOonfWXGR9E9SsFo=
cloud.google.com/go/monitoring v1.8.0 h1:c9riaGSPQ4dUKWB+M1Fl0N+iLxstMbCktdEwYSPGDvA=
cloud.google.com/go/monitoring v1.8.0/go.mod h1:E7PtoMJ1kQXWxPjB6mv2fhC5/15jInuulFdYYtlcvT4=
diff --git a/internal/log/log.go b/internal/log/log.go
index 3cd28b9..4440dc0 100644
--- a/internal/log/log.go
+++ b/internal/log/log.go
@@ -8,10 +8,7 @@
import (
"context"
"fmt"
- "log"
- "strings"
- "cloud.google.com/go/logging"
"golang.org/x/exp/slog"
)
@@ -62,30 +59,3 @@
l.Log(ctx, level, fmt.Sprintf(format, args...), slog.ErrorKey, err)
}
}
-
-// toLevel returns the logging.Severity for a given string.
-// Possible input values are "", "debug", "info", "warning", "error", "fatal".
-// In case of invalid string input, it maps to DefaultLevel.
-func toLevel(v string) logging.Severity {
- v = strings.ToLower(v)
-
- switch v {
- case "":
- // default log level will print everything.
- return logging.Default
- case "debug":
- return logging.Debug
- case "info":
- return logging.Info
- case "warning":
- return logging.Warning
- case "error":
- return logging.Error
- case "fatal":
- return logging.Critical
- }
-
- // Default log level in case of invalid input.
- log.Printf("Error: %s is invalid LogLevel. Possible values are [debug, info, warning, error, fatal]", v)
- return logging.Default
-}
diff --git a/internal/pkgsitedb/db.go b/internal/pkgsitedb/db.go
index 1ef7c86..a583067 100644
--- a/internal/pkgsitedb/db.go
+++ b/internal/pkgsitedb/db.go
@@ -17,10 +17,10 @@
_ "github.com/lib/pq"
secretmanager "cloud.google.com/go/secretmanager/apiv1"
+ smpb "cloud.google.com/go/secretmanager/apiv1/secretmanagerpb"
"golang.org/x/pkgsite-metrics/internal/config"
"golang.org/x/pkgsite-metrics/internal/derrors"
"golang.org/x/pkgsite-metrics/internal/scan"
- smpb "google.golang.org/genproto/googleapis/cloud/secretmanager/v1"
)
// Open creates a connection to the pkgsite database.
diff --git a/internal/queue/queue.go b/internal/queue/queue.go
index 22c085f..32f1e6e 100644
--- a/internal/queue/queue.go
+++ b/internal/queue/queue.go
@@ -17,10 +17,10 @@
"time"
cloudtasks "cloud.google.com/go/cloudtasks/apiv2"
+ taskspb "cloud.google.com/go/cloudtasks/apiv2/cloudtaskspb"
"golang.org/x/pkgsite-metrics/internal/config"
"golang.org/x/pkgsite-metrics/internal/derrors"
"golang.org/x/pkgsite-metrics/internal/log"
- taskspb "google.golang.org/genproto/googleapis/cloud/tasks/v2"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/status"
"google.golang.org/protobuf/types/known/durationpb"
diff --git a/internal/queue/queue_test.go b/internal/queue/queue_test.go
index a7cbf48..2fcb7ef 100644
--- a/internal/queue/queue_test.go
+++ b/internal/queue/queue_test.go
@@ -7,9 +7,9 @@
import (
"testing"
+ taskspb "cloud.google.com/go/cloudtasks/apiv2/cloudtaskspb"
"github.com/google/go-cmp/cmp"
"golang.org/x/pkgsite-metrics/internal/config"
- taskspb "google.golang.org/genproto/googleapis/cloud/tasks/v2"
"google.golang.org/protobuf/testing/protocmp"
"google.golang.org/protobuf/types/known/durationpb"
)
diff --git a/internal/scan/parse.go b/internal/scan/parse.go
index 6347296..1efcd76 100644
--- a/internal/scan/parse.go
+++ b/internal/scan/parse.go
@@ -117,9 +117,7 @@
if modulePath == "" {
return ModuleURLPath{}, fmt.Errorf("invalid path %q: missing module", requestPath)
}
- if strings.HasPrefix(versionAndSuffix, "v/") {
- versionAndSuffix = versionAndSuffix[2:]
- }
+ versionAndSuffix = strings.TrimPrefix(versionAndSuffix, "v/")
// Now versionAndSuffix begins with a version.
version, suffix, _ := strings.Cut(versionAndSuffix, "/")
if version == "" {
diff --git a/internal/worker/analysis_test.go b/internal/worker/analysis_test.go
index 9a965da..4388abc 100644
--- a/internal/worker/analysis_test.go
+++ b/internal/worker/analysis_test.go
@@ -23,7 +23,6 @@
func TestRunAnalysisBinary(t *testing.T) {
mustMakeBinaryDir(t)
- const binary = "./analyzer"
binPath, cleanup := buildtest.GoBuild(t, "testdata/analyzer", "")
defer cleanup()
@@ -95,7 +94,6 @@
func TestAnalysisScan(t *testing.T) {
const (
- binary = "./analyzer"
modulePath = "a.com/m"
version = "v1.2.3"
)
diff --git a/internal/worker/govulncheck_scan.go b/internal/worker/govulncheck_scan.go
index ea18a6e..fe93283 100644
--- a/internal/worker/govulncheck_scan.go
+++ b/internal/worker/govulncheck_scan.go
@@ -8,7 +8,6 @@
"context"
"errors"
"fmt"
- "io"
"net/http"
"os"
"os/exec"
@@ -450,15 +449,6 @@
return res.Vulns, nil
}
-func copyFromGCSToWriter(ctx context.Context, w io.Writer, bucket *storage.BucketHandle, srcPath string) error {
- gcsReader, err := bucket.Object(srcPath).NewReader(ctx)
- if err != nil {
- return err
- }
- _, err = io.Copy(w, gcsReader)
- return err
-}
-
func isNoRequiredModule(err error) bool {
return strings.Contains(err.Error(), "no required module")
}
diff --git a/internal/worker/server.go b/internal/worker/server.go
index cfaea7e..3fe43cf 100644
--- a/internal/worker/server.go
+++ b/internal/worker/server.go
@@ -16,7 +16,6 @@
"time"
"cloud.google.com/go/errorreporting"
- "github.com/google/safehtml/template"
"golang.org/x/pkgsite-metrics/internal/bigquery"
"golang.org/x/pkgsite-metrics/internal/config"
"golang.org/x/pkgsite-metrics/internal/derrors"
@@ -35,9 +34,8 @@
proxyClient *proxy.Client
queue queue.Queue
- devMode bool
- mu sync.Mutex
- templates map[string]*template.Template
+ devMode bool
+ mu sync.Mutex
}
var errBQDisabled = &serverError{http.StatusPreconditionRequired, errors.New("BigQuery disabled on this server")}