From 376b73f0782ee05405d44ab650f362577b37292f Mon Sep 17 00:00:00 2001 From: CrazyMax Date: Wed, 22 Feb 2023 14:37:50 +0100 Subject: [PATCH 1/5] update to go 1.20 Signed-off-by: CrazyMax --- Dockerfile | 2 +- docker-bake.hcl | 2 +- hack/dockerfiles/docs.Dockerfile | 2 +- hack/dockerfiles/generated-files.Dockerfile | 2 +- hack/dockerfiles/lint.Dockerfile | 2 +- hack/dockerfiles/vendor.Dockerfile | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Dockerfile b/Dockerfile index f1cc6a16..c8d71191 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,6 @@ # syntax=docker/dockerfile-upstream:1.5.0 -ARG GO_VERSION=1.19 +ARG GO_VERSION=1.20 ARG XX_VERSION=1.1.2 ARG DOCKERD_VERSION=20.10.14 diff --git a/docker-bake.hcl b/docker-bake.hcl index 644912da..99eaaecc 100644 --- a/docker-bake.hcl +++ b/docker-bake.hcl @@ -1,5 +1,5 @@ variable "GO_VERSION" { - default = "1.19" + default = "1.20" } variable "DOCS_FORMATS" { default = "md" diff --git a/hack/dockerfiles/docs.Dockerfile b/hack/dockerfiles/docs.Dockerfile index c78d0b75..94ab3b1a 100644 --- a/hack/dockerfiles/docs.Dockerfile +++ b/hack/dockerfiles/docs.Dockerfile @@ -1,6 +1,6 @@ # syntax=docker/dockerfile:1.4 -ARG GO_VERSION=1.19 +ARG GO_VERSION=1.20 ARG FORMATS=md,yaml FROM golang:${GO_VERSION}-alpine AS docsgen diff --git a/hack/dockerfiles/generated-files.Dockerfile b/hack/dockerfiles/generated-files.Dockerfile index 85c8729d..cf9a2ce7 100644 --- a/hack/dockerfiles/generated-files.Dockerfile +++ b/hack/dockerfiles/generated-files.Dockerfile @@ -5,7 +5,7 @@ # Copyright The Buildx Authors. # Licensed under the Apache License, Version 2.0 -ARG GO_VERSION="1.19" +ARG GO_VERSION="1.20" ARG PROTOC_VERSION="3.11.4" # protoc is dynamically linked to glibc so can't use alpine base diff --git a/hack/dockerfiles/lint.Dockerfile b/hack/dockerfiles/lint.Dockerfile index bbff367c..e98c48fd 100644 --- a/hack/dockerfiles/lint.Dockerfile +++ b/hack/dockerfiles/lint.Dockerfile @@ -1,6 +1,6 @@ # syntax=docker/dockerfile:1.4 -ARG GO_VERSION=1.19 +ARG GO_VERSION=1.20 FROM golang:${GO_VERSION}-alpine RUN apk add --no-cache git gcc musl-dev diff --git a/hack/dockerfiles/vendor.Dockerfile b/hack/dockerfiles/vendor.Dockerfile index e5e9b7a6..a928e12f 100644 --- a/hack/dockerfiles/vendor.Dockerfile +++ b/hack/dockerfiles/vendor.Dockerfile @@ -1,6 +1,6 @@ # syntax=docker/dockerfile:1.4 -ARG GO_VERSION=1.19 +ARG GO_VERSION=1.20 ARG MODOUTDATED_VERSION=v0.8.0 FROM golang:${GO_VERSION}-alpine AS base From e16c1b289bf0a7c897d74f3625faa41f355c3f8b Mon Sep 17 00:00:00 2001 From: CrazyMax Date: Wed, 22 Feb 2023 14:38:17 +0100 Subject: [PATCH 2/5] update golangci-lint to v1.51.1 Signed-off-by: CrazyMax --- hack/dockerfiles/lint.Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hack/dockerfiles/lint.Dockerfile b/hack/dockerfiles/lint.Dockerfile index e98c48fd..5092e85c 100644 --- a/hack/dockerfiles/lint.Dockerfile +++ b/hack/dockerfiles/lint.Dockerfile @@ -4,7 +4,7 @@ ARG GO_VERSION=1.20 FROM golang:${GO_VERSION}-alpine RUN apk add --no-cache git gcc musl-dev -RUN wget -O- -nv https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s v1.48.0 +RUN wget -O- -nv https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s v1.51.1 WORKDIR /go/src/github.com/docker/buildx RUN --mount=target=/go/src/github.com/docker/buildx --mount=target=/root/.cache,type=cache \ golangci-lint run From 5258e4403079a1585ea4e0b5d9161abb2709de66 Mon Sep 17 00:00:00 2001 From: CrazyMax Date: Wed, 22 Feb 2023 14:40:14 +0100 Subject: [PATCH 3/5] remove deprecated golangci-lint linters Linters 'deadcode' and 'varcheck' are deprecated since v1.49.0 and had been replaced by 'unused' Signed-off-by: CrazyMax --- .golangci.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.golangci.yml b/.golangci.yml index 9a75b919..f82887de 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -11,13 +11,11 @@ linters: enable: - gofmt - govet - - deadcode - depguard - goimports - ineffassign - misspell - unused - - varcheck - revive - staticcheck - typecheck From fb61fde581dbd4dce8c2be5af3db888b4e4305a1 Mon Sep 17 00:00:00 2001 From: CrazyMax Date: Wed, 22 Feb 2023 14:56:28 +0100 Subject: [PATCH 4/5] fix cannot set environment variables in parallel tests > FAIL: TestReadTargets/ArgsOverrides/leaf (0.00s) > panic: testing: t.Setenv called after t.Parallel; cannot set environment variables in parallel tests Signed-off-by: CrazyMax --- bake/bake_test.go | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/bake/bake_test.go b/bake/bake_test.go index 4311b252..b42a7ee6 100644 --- a/bake/bake_test.go +++ b/bake/bake_test.go @@ -10,8 +10,6 @@ import ( ) func TestReadTargets(t *testing.T) { - t.Parallel() - fp := File{ Name: "config.hcl", Data: []byte(` @@ -35,6 +33,7 @@ target "webapp" { ctx := context.TODO() t.Run("NoOverrides", func(t *testing.T) { + t.Parallel() m, g, err := ReadTargets(ctx, []File{fp}, []string{"webapp"}, nil, nil) require.NoError(t, err) require.Equal(t, 1, len(m)) @@ -50,6 +49,7 @@ target "webapp" { }) t.Run("InvalidTargetOverrides", func(t *testing.T) { + t.Parallel() _, _, err := ReadTargets(ctx, []File{fp}, []string{"webapp"}, []string{"nosuchtarget.context=foo"}, nil) require.NotNil(t, err) require.Equal(t, err.Error(), "could not find any target matching 'nosuchtarget'") @@ -91,6 +91,7 @@ target "webapp" { // building leaf but overriding parent fields t.Run("parent", func(t *testing.T) { + t.Parallel() m, g, err := ReadTargets(ctx, []File{fp}, []string{"webapp"}, []string{ "webDEP.args.VAR_INHERITED=override", "webDEP.args.VAR_BOTH=override", @@ -105,6 +106,7 @@ target "webapp" { }) t.Run("ContextOverride", func(t *testing.T) { + t.Parallel() _, _, err := ReadTargets(ctx, []File{fp}, []string{"webapp"}, []string{"webapp.context"}, nil) require.NotNil(t, err) @@ -116,6 +118,7 @@ target "webapp" { }) t.Run("NoCacheOverride", func(t *testing.T) { + t.Parallel() m, g, err := ReadTargets(ctx, []File{fp}, []string{"webapp"}, []string{"webapp.no-cache=false"}, nil) require.NoError(t, err) require.Equal(t, false, *m["webapp"].NoCache) @@ -124,6 +127,7 @@ target "webapp" { }) t.Run("PullOverride", func(t *testing.T) { + t.Parallel() m, g, err := ReadTargets(ctx, []File{fp}, []string{"webapp"}, []string{"webapp.pull=false"}, nil) require.NoError(t, err) require.Equal(t, false, *m["webapp"].Pull) @@ -132,6 +136,7 @@ target "webapp" { }) t.Run("PatternOverride", func(t *testing.T) { + t.Parallel() // same check for two cases multiTargetCheck := func(t *testing.T, m map[string]*Target, g map[string]*Group, err error) { require.NoError(t, err) From 7888fdee58398acab51ad91fc7de10820005149c Mon Sep 17 00:00:00 2001 From: CrazyMax Date: Wed, 22 Feb 2023 14:57:29 +0100 Subject: [PATCH 5/5] fix lint issue should drop = nil from declaration of var n; it is the zero value Signed-off-by: CrazyMax --- bake/hcl_test.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bake/hcl_test.go b/bake/hcl_test.go index 56d705ad..ecb0d722 100644 --- a/bake/hcl_test.go +++ b/bake/hcl_test.go @@ -946,7 +946,7 @@ func TestVarUnsupportedType(t *testing.T) { } func ptrstr(s interface{}) *string { - var n *string = nil + var n *string if reflect.ValueOf(s).Kind() == reflect.String { ss := s.(string) n = &ss