Skip to content

Commit f7be13f

Browse files
Update module github.com/golangci/golangci-lint to v2.3.0 (#95)
* Update module github.com/golangci/golangci-lint to v2.3.0 * Fix lint violations --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Colin O'Dell <[email protected]>
1 parent 80ee854 commit f7be13f

File tree

6 files changed

+27
-26
lines changed

6 files changed

+27
-26
lines changed

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# renovate: datasource=go depName=github.com/golangci/golangci-lint
2-
GOLANGCI_LINT_VERSION=v2.2.2
2+
GOLANGCI_LINT_VERSION=v2.3.0
33
# renovate: datasource=go depName=gotest.tools/gotestsum
44
GOTESTSUM_VERSION=v1.12.3
55
# renovate: datasource=go depName=github.com/boumenot/gocover-cobertura

build/config/.golangci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ linters:
168168
enable-all-rules: false
169169
rules:
170170
- name: argument-limit
171-
arguments: [4]
171+
arguments: [5]
172172
- name: atomic
173173
disabled: false
174174
- name: blank-imports

pkg/notifier/slack/slack.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ func (s *Transport) Validate(ctx context.Context) error {
7474
return notifier.Permanent(fmt.Errorf("authentication failed: %w", err))
7575
}
7676

77-
slog.Info("Slack transport connected", "transport", s.key, "slack_team", resp.Team, "slack_user", resp.User)
77+
slog.InfoContext(ctx, "Slack transport connected", "transport", s.key, "slack_team", resp.Team, "slack_user", resp.User)
7878
return nil
7979
}
8080

pkg/server/handler.go

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
package server
77

88
import (
9+
"context"
910
"errors"
1011
"fmt"
1112
"log/slog"
@@ -25,16 +26,16 @@ func CreateEventProcessingHandler(parserKey string, parser event.Parser, process
2526
slog.String("path", request.URL.Path),
2627
)
2728

28-
logger.Debug("handling incoming webhook")
29+
logger.DebugContext(request.Context(), "handling incoming webhook")
2930

3031
evt, err := parser.Parse(request)
3132
if err != nil {
32-
logAndSendErrorResponse(logger, writer, "failed to parse event", err)
33+
logAndSendErrorResponse(request.Context(), logger, writer, "failed to parse event", err)
3334
return
3435
}
3536

3637
if evt == nil { // Event is ignorable
37-
logger.Debug("ignoring uninteresting event")
38+
logger.DebugContext(request.Context(), "ignoring uninteresting event")
3839
http.Error(writer, "thanks but we're not interested in that event", 200)
3940
return
4041
}
@@ -46,20 +47,20 @@ func CreateEventProcessingHandler(parserKey string, parser event.Parser, process
4647
for _, processor := range processors {
4748
notifications, err = processor.Process(request.Context(), *evt, notifications)
4849
if err != nil {
49-
logAndSendErrorResponse(logger, writer, fmt.Sprintf("failed during processing (processor %T)", processor), err)
50+
logAndSendErrorResponse(request.Context(), logger, writer, fmt.Sprintf("failed during processing (processor %T)", processor), err)
5051
return
5152
}
5253
}
5354

5455
if len(notifications) == 0 {
55-
logger.Debug("no notifications to send after processing")
56+
logger.DebugContext(request.Context(), "no notifications to send after processing")
5657
http.Error(writer, "no notifications to send", 200)
5758
return
5859
}
5960

6061
logger = logger.With(slog.Int("total_notifications", len(notifications)))
6162

62-
logger.Debug("dispatching notifications")
63+
logger.DebugContext(request.Context(), "dispatching notifications")
6364

6465
errorCount := 0
6566
for _, n := range notifications {
@@ -78,7 +79,7 @@ func CreateEventProcessingHandler(parserKey string, parser event.Parser, process
7879
}
7980
}
8081

81-
func logAndSendErrorResponse(logger *slog.Logger, writer http.ResponseWriter, errorPrefix string, err error) {
82+
func logAndSendErrorResponse(ctx context.Context, logger *slog.Logger, writer http.ResponseWriter, errorPrefix string, err error) {
8283
statusCode := 500
8384

8485
var httpError *Error
@@ -88,9 +89,9 @@ func logAndSendErrorResponse(logger *slog.Logger, writer http.ResponseWriter, er
8889
}
8990

9091
if statusCode < 500 {
91-
logger.Warn(errorPrefix, "error", err)
92+
logger.WarnContext(ctx, errorPrefix, "error", err)
9293
} else {
93-
logger.Error(errorPrefix, "error", err)
94+
logger.ErrorContext(ctx, errorPrefix, "error", err)
9495
}
9596

9697
http.Error(writer, fmt.Sprintf("%s: %v", errorPrefix, err), statusCode)

pkg/user/handler.go

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -49,20 +49,20 @@ func (ph *PreferencesHandler) GetPreferences(writer http.ResponseWriter, request
4949
u, err := ph.userStore.Get(request.Context(), key)
5050
if err != nil {
5151
if errors.Is(err, ErrUserNotFound) {
52-
slog.Info("user not found", "key", key)
52+
slog.InfoContext(request.Context(), "user not found", "key", key)
5353
http.Error(writer, "user not found", http.StatusNotFound)
5454
return
5555
}
5656

57-
slog.Error("failed to get user", "key", key, "error", err)
57+
slog.ErrorContext(request.Context(), "failed to get user", "key", key, "error", err)
5858
http.Error(writer, "failed to get user", http.StatusInternalServerError)
5959
return
6060
}
6161

6262
hydratedUserPreferences := ph.buildCurrentUserPreferences(request.Context(), preference.Chain{u.Preferences, ph.defaults})
6363
resp := preferencesBody{Preferences: hydratedUserPreferences}
6464

65-
writeJson(writer, resp)
65+
writeJson(request.Context(), writer, resp)
6666
}
6767

6868
// UpdatePreferences updates the preferences for a given user
@@ -72,25 +72,25 @@ func (ph *PreferencesHandler) UpdatePreferences(writer http.ResponseWriter, requ
7272

7373
var req preferencesBody
7474
if err := json.NewDecoder(request.Body).Decode(&req); err != nil {
75-
slog.Error("failed to decode request", "error", err)
75+
slog.ErrorContext(request.Context(), "failed to decode request", "error", err)
7676
http.Error(writer, "failed to decode request", http.StatusBadRequest)
7777
return
7878
}
7979

8080
err := ph.userStore.SetPreferences(request.Context(), key, req.Preferences)
8181
if err != nil {
8282
if errors.Is(err, ErrUserNotFound) {
83-
slog.Info("user not found", "key", key)
83+
slog.InfoContext(request.Context(), "user not found", "key", key)
8484
http.Error(writer, "user not found", http.StatusNotFound)
8585
return
8686
}
8787

88-
slog.Error("failed to save preferences", "key", key, "error", err)
88+
slog.ErrorContext(request.Context(), "failed to save preferences", "key", key, "error", err)
8989
http.Error(writer, "failed to save preferences", http.StatusInternalServerError)
9090
return
9191
}
9292

93-
writeJson(writer, preferencesBody{
93+
writeJson(request.Context(), writer, preferencesBody{
9494
Preferences: ph.buildCurrentUserPreferences(request.Context(), preference.Chain{req.Preferences, ph.defaults}),
9595
})
9696
}
@@ -152,7 +152,7 @@ type availableOptions struct {
152152
}
153153

154154
// ListOptions returns the available sources and transports for setting preferences
155-
func (ph *PreferencesHandler) ListOptions(writer http.ResponseWriter, _ *http.Request) {
155+
func (ph *PreferencesHandler) ListOptions(writer http.ResponseWriter, request *http.Request) {
156156
sources := make([]source, 0, len(ph.parsers))
157157
for key, src := range ph.parsers {
158158
sources = append(sources, source{
@@ -178,12 +178,12 @@ func (ph *PreferencesHandler) ListOptions(writer http.ResponseWriter, _ *http.Re
178178
Transports: transports,
179179
}
180180

181-
writeJson(writer, resp)
181+
writeJson(request.Context(), writer, resp)
182182
}
183183

184-
func writeJson(writer http.ResponseWriter, value any) {
184+
func writeJson(ctx context.Context, writer http.ResponseWriter, value any) {
185185
if err := json.NewEncoder(writer).Encode(value); err != nil {
186-
slog.Error("failed to encode response", "error", err)
186+
slog.ErrorContext(ctx, "failed to encode response", "error", err)
187187
writer.WriteHeader(500)
188188
}
189189
}

server.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ func (s *Server) serveHttp(ctx context.Context) error {
175175
// Mount all parsers
176176
for key, parser := range s.parsers {
177177
endpoint := "/event/" + key
178-
slog.Debug("mounting parser", "endpoint", endpoint)
178+
slog.DebugContext(ctx, "mounting parser", "endpoint", endpoint)
179179
hsm.HandleFunc(endpoint, server.CreateEventProcessingHandler(key, parser, s.processors, s.notifier))
180180
}
181181

@@ -196,15 +196,15 @@ func (s *Server) serveHttp(ctx context.Context) error {
196196
go (func() {
197197
defer close(httpExited)
198198

199-
slog.Info("http server listening on " + s.listenAddr)
199+
slog.InfoContext(ctx, "http server listening on "+s.listenAddr)
200200

201201
httpExited <- hs.ListenAndServe()
202202
})()
203203

204204
select {
205205
// Wait for the context to be canceled
206206
case <-ctx.Done():
207-
slog.Info("shutting down http server gracefully")
207+
slog.InfoContext(ctx, "shutting down http server gracefully")
208208
shutdownCtx, cancelShutdown := context.WithTimeout(context.Background(), 5*time.Second)
209209
defer cancelShutdown()
210210

0 commit comments

Comments
 (0)