Skip to content

Commit ab0d250

Browse files
committed
Standardize linting file and fix or ignore lots of linting errors
1 parent fcb9d88 commit ab0d250

File tree

120 files changed

+904
-943
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

120 files changed

+904
-943
lines changed

.golangci.yml

-74
This file was deleted.

Makefile

+2-2
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ ci: testcgo build
2929

3030
bootstra%:
3131
# Using a released version of golangci-lint to take into account custom replacements in their go.mod
32-
$Q curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(shell go env GOPATH)/bin v1.42.0
32+
$Q curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(shell go env GOPATH)/bin v1.48.0
3333

3434
.PHONY: bootstra%
3535

@@ -151,7 +151,7 @@ integration: bin/$(BINNAME)
151151
#########################################
152152

153153
fmt:
154-
$Q gofmt -l -s -w $(SRC)
154+
$Q goimports -local github.com/golangci/golangci-lint -l -w $(SRC)
155155

156156
lint:
157157
$Q golangci-lint run --timeout=30m

acme/account.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ func (a *Account) ToLog() (interface{}, error) {
3333

3434
// IsValid returns true if the Account is valid.
3535
func (a *Account) IsValid() bool {
36-
return Status(a.Status) == StatusValid
36+
return a.Status == StatusValid
3737
}
3838

3939
// KeyToID converts a JWK to a thumbprint.

acme/account_test.go

+10-9
Original file line numberDiff line numberDiff line change
@@ -46,14 +46,14 @@ func TestKeyToID(t *testing.T) {
4646
tc := run(t)
4747
if id, err := KeyToID(tc.jwk); err != nil {
4848
if assert.NotNil(t, tc.err) {
49-
switch k := err.(type) {
50-
case *Error:
49+
var k *Error
50+
if errors.As(err, &k) {
5151
assert.Equals(t, k.Type, tc.err.Type)
5252
assert.Equals(t, k.Detail, tc.err.Detail)
5353
assert.Equals(t, k.Status, tc.err.Status)
5454
assert.Equals(t, k.Err.Error(), tc.err.Err.Error())
5555
assert.Equals(t, k.Detail, tc.err.Detail)
56-
default:
56+
} else {
5757
assert.FatalError(t, errors.New("unexpected error type"))
5858
}
5959
}
@@ -131,12 +131,13 @@ func TestExternalAccountKey_BindTo(t *testing.T) {
131131
}
132132
if wantErr {
133133
assert.NotNil(t, err)
134-
assert.Type(t, &Error{}, err)
135-
ae, _ := err.(*Error)
136-
assert.Equals(t, ae.Type, tt.err.Type)
137-
assert.Equals(t, ae.Detail, tt.err.Detail)
138-
assert.Equals(t, ae.Identifier, tt.err.Identifier)
139-
assert.Equals(t, ae.Subproblems, tt.err.Subproblems)
134+
var ae *Error
135+
if assert.True(t, errors.As(err, &ae)) {
136+
assert.Equals(t, ae.Type, tt.err.Type)
137+
assert.Equals(t, ae.Detail, tt.err.Detail)
138+
assert.Equals(t, ae.Identifier, tt.err.Identifier)
139+
assert.Equals(t, ae.Subproblems, tt.err.Subproblems)
140+
}
140141
} else {
141142
assert.Equals(t, eak.AccountID, acct.ID)
142143
assert.Equals(t, eak.HmacKey, []byte{})

acme/api/account.go

+3-2
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package api
22

33
import (
44
"encoding/json"
5+
"errors"
56
"net/http"
67

78
"github.com/go-chi/chi"
@@ -97,8 +98,8 @@ func NewAccount(w http.ResponseWriter, r *http.Request) {
9798
httpStatus := http.StatusCreated
9899
acc, err := accountFromContext(ctx)
99100
if err != nil {
100-
acmeErr, ok := err.(*acme.Error)
101-
if !ok || acmeErr.Status != http.StatusBadRequest {
101+
var acmeErr *acme.Error
102+
if !errors.As(err, &acmeErr) || acmeErr.Status != http.StatusBadRequest {
102103
// Something went wrong ...
103104
render.Error(w, err)
104105
return

acme/api/account_test.go

+12-10
Original file line numberDiff line numberDiff line change
@@ -197,11 +197,12 @@ func TestNewAccountRequest_Validate(t *testing.T) {
197197
t.Run(name, func(t *testing.T) {
198198
if err := tc.nar.Validate(); err != nil {
199199
if assert.NotNil(t, err) {
200-
ae, ok := err.(*acme.Error)
201-
assert.True(t, ok)
202-
assert.HasPrefix(t, ae.Error(), tc.err.Error())
203-
assert.Equals(t, ae.StatusCode(), tc.err.StatusCode())
204-
assert.Equals(t, ae.Type, tc.err.Type)
200+
var ae *acme.Error
201+
if assert.True(t, errors.As(err, &ae)) {
202+
assert.HasPrefix(t, ae.Error(), tc.err.Error())
203+
assert.Equals(t, ae.StatusCode(), tc.err.StatusCode())
204+
assert.Equals(t, ae.Type, tc.err.Type)
205+
}
205206
}
206207
} else {
207208
assert.Nil(t, tc.err)
@@ -268,11 +269,12 @@ func TestUpdateAccountRequest_Validate(t *testing.T) {
268269
t.Run(name, func(t *testing.T) {
269270
if err := tc.uar.Validate(); err != nil {
270271
if assert.NotNil(t, err) {
271-
ae, ok := err.(*acme.Error)
272-
assert.True(t, ok)
273-
assert.HasPrefix(t, ae.Error(), tc.err.Error())
274-
assert.Equals(t, ae.StatusCode(), tc.err.StatusCode())
275-
assert.Equals(t, ae.Type, tc.err.Type)
272+
var ae *acme.Error
273+
if assert.True(t, errors.As(err, &ae)) {
274+
assert.HasPrefix(t, ae.Error(), tc.err.Error())
275+
assert.Equals(t, ae.StatusCode(), tc.err.StatusCode())
276+
assert.Equals(t, ae.Type, tc.err.Type)
277+
}
276278
}
277279
} else {
278280
assert.Nil(t, tc.err)

acme/api/eab.go

+4-1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package api
33
import (
44
"context"
55
"encoding/json"
6+
"errors"
67

78
"go.step.sm/crypto/jose"
89

@@ -24,6 +25,7 @@ func validateExternalAccountBinding(ctx context.Context, nar *NewAccountRequest)
2425
}
2526

2627
if !acmeProv.RequireEAB {
28+
//nolint:nilnil // legacy
2729
return nil, nil
2830
}
2931

@@ -51,7 +53,8 @@ func validateExternalAccountBinding(ctx context.Context, nar *NewAccountRequest)
5153
db := acme.MustDatabaseFromContext(ctx)
5254
externalAccountKey, err := db.GetExternalAccountKey(ctx, acmeProv.ID, keyID)
5355
if err != nil {
54-
if _, ok := err.(*acme.Error); ok {
56+
var ae *acme.Error
57+
if errors.As(err, &ae) {
5558
return nil, acme.WrapError(acme.ErrorUnauthorizedType, err, "the field 'kid' references an unknown key")
5659
}
5760
return nil, acme.WrapErrorISE(err, "error retrieving external account key")

acme/api/eab_test.go

+9-7
Original file line numberDiff line numberDiff line change
@@ -860,13 +860,15 @@ func TestHandler_validateExternalAccountBinding(t *testing.T) {
860860
if wantErr {
861861
assert.NotNil(t, err)
862862
assert.Type(t, &acme.Error{}, err)
863-
ae, _ := err.(*acme.Error)
864-
assert.Equals(t, ae.Type, tc.err.Type)
865-
assert.Equals(t, ae.Status, tc.err.Status)
866-
assert.HasPrefix(t, ae.Err.Error(), tc.err.Err.Error())
867-
assert.Equals(t, ae.Detail, tc.err.Detail)
868-
assert.Equals(t, ae.Identifier, tc.err.Identifier)
869-
assert.Equals(t, ae.Subproblems, tc.err.Subproblems)
863+
var ae *acme.Error
864+
if assert.True(t, errors.As(err, &ae)) {
865+
assert.Equals(t, ae.Type, tc.err.Type)
866+
assert.Equals(t, ae.Status, tc.err.Status)
867+
assert.HasPrefix(t, ae.Err.Error(), tc.err.Err.Error())
868+
assert.Equals(t, ae.Detail, tc.err.Detail)
869+
assert.Equals(t, ae.Identifier, tc.err.Identifier)
870+
assert.Equals(t, ae.Subproblems, tc.err.Subproblems)
871+
}
870872
} else {
871873
if got == nil {
872874
assert.Nil(t, tc.eak)

acme/api/middleware_test.go

-3
Original file line numberDiff line numberDiff line change
@@ -518,9 +518,6 @@ func TestHandler_verifyAndExtractJWSPayload(t *testing.T) {
518518
}
519519
},
520520
"ok/empty-algorithm-in-jwk": func(t *testing.T) test {
521-
_pub := *pub
522-
clone := &_pub
523-
clone.Algorithm = ""
524521
ctx := context.WithValue(context.Background(), jwsContextKey, parsedJWS)
525522
ctx = context.WithValue(ctx, jwkContextKey, pub)
526523
return test{

acme/api/order_test.go

+15-13
Original file line numberDiff line numberDiff line change
@@ -179,11 +179,12 @@ func TestNewOrderRequest_Validate(t *testing.T) {
179179
t.Run(name, func(t *testing.T) {
180180
if err := tc.nor.Validate(); err != nil {
181181
if assert.NotNil(t, err) {
182-
ae, ok := err.(*acme.Error)
183-
assert.True(t, ok)
184-
assert.HasPrefix(t, ae.Error(), tc.err.Error())
185-
assert.Equals(t, ae.StatusCode(), tc.err.StatusCode())
186-
assert.Equals(t, ae.Type, tc.err.Type)
182+
var ae *acme.Error
183+
if assert.True(t, errors.As(err, &ae)) {
184+
assert.HasPrefix(t, ae.Error(), tc.err.Error())
185+
assert.Equals(t, ae.StatusCode(), tc.err.StatusCode())
186+
assert.Equals(t, ae.Type, tc.err.Type)
187+
}
187188
}
188189
} else {
189190
if assert.Nil(t, tc.err) {
@@ -253,11 +254,12 @@ func TestFinalizeRequestValidate(t *testing.T) {
253254
t.Run(name, func(t *testing.T) {
254255
if err := tc.fr.Validate(); err != nil {
255256
if assert.NotNil(t, err) {
256-
ae, ok := err.(*acme.Error)
257-
assert.True(t, ok)
258-
assert.HasPrefix(t, ae.Error(), tc.err.Error())
259-
assert.Equals(t, ae.StatusCode(), tc.err.StatusCode())
260-
assert.Equals(t, ae.Type, tc.err.Type)
257+
var ae *acme.Error
258+
if assert.True(t, errors.As(err, &ae)) {
259+
assert.HasPrefix(t, ae.Error(), tc.err.Error())
260+
assert.Equals(t, ae.StatusCode(), tc.err.StatusCode())
261+
assert.Equals(t, ae.Type, tc.err.Type)
262+
}
261263
}
262264
} else {
263265
if assert.Nil(t, tc.err) {
@@ -761,14 +763,14 @@ func TestHandler_newAuthorization(t *testing.T) {
761763
ctx = acme.NewProvisionerContext(ctx, tc.prov)
762764
if err := newAuthorization(ctx, tc.az); err != nil {
763765
if assert.NotNil(t, tc.err) {
764-
switch k := err.(type) {
765-
case *acme.Error:
766+
var k *acme.Error
767+
if assert.True(t, errors.As(err, &k)) {
766768
assert.Equals(t, k.Type, tc.err.Type)
767769
assert.Equals(t, k.Detail, tc.err.Detail)
768770
assert.Equals(t, k.Status, tc.err.Status)
769771
assert.Equals(t, k.Err.Error(), tc.err.Err.Error())
770772
assert.Equals(t, k.Detail, tc.err.Detail)
771-
default:
773+
} else {
772774
assert.FatalError(t, errors.New("unexpected error type"))
773775
}
774776
}

acme/authorization_test.go

+3-3
Original file line numberDiff line numberDiff line change
@@ -130,14 +130,14 @@ func TestAuthorization_UpdateStatus(t *testing.T) {
130130
tc := run(t)
131131
if err := tc.az.UpdateStatus(context.Background(), tc.db); err != nil {
132132
if assert.NotNil(t, tc.err) {
133-
switch k := err.(type) {
134-
case *Error:
133+
var k *Error
134+
if errors.As(err, &k) {
135135
assert.Equals(t, k.Type, tc.err.Type)
136136
assert.Equals(t, k.Detail, tc.err.Detail)
137137
assert.Equals(t, k.Status, tc.err.Status)
138138
assert.Equals(t, k.Err.Error(), tc.err.Err.Error())
139139
assert.Equals(t, k.Detail, tc.err.Detail)
140-
default:
140+
} else {
141141
assert.FatalError(t, errors.New("unexpected error type"))
142142
}
143143
}

acme/challenge.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ func tlsalpn01Validate(ctx context.Context, ch *Challenge, db DB, jwk *jose.JSON
162162
// [RFC5246] or higher when connecting to clients for validation.
163163
MinVersion: tls.VersionTLS12,
164164
ServerName: serverName(ch),
165-
InsecureSkipVerify: true, // nolint:gosec // we expect a self-signed challenge certificate
165+
InsecureSkipVerify: true, //nolint:gosec // we expect a self-signed challenge certificate
166166
}
167167

168168
hostPort := net.JoinHostPort(ch.Value, "443")

0 commit comments

Comments
 (0)