build: update golangci-lint to v2.12.2 with canonical config
Add the canonical .golangci.yml (v2 schema, all linters enabled with a
small documented disable list) and pin the Dockerfile lint stage to
golangci/golangci-lint:v2.12.2 by tag and digest, replacing the old
v1.64.8 digest-only pin.
Fix all findings surfaced by the v1 to v2 jump without changing any
exported signatures or behavior:
- add package and exported-symbol doc comments (revive)
- rename unused handler parameters to underscore (revive)
- check or explicitly discard error returns (errcheck, errchkjson)
- wrap errors with %w instead of %v (err113)
- use http.NewRequestWithContext instead of http.Post (noctx)
- replace fmt.Println with fmt.Fprintln(os.Stdout, ...) (forbidigo)
- name magic numbers as constants (mnd)
- add explicit slog.LevelDebug case (exhaustive)
- interface{} to any (modernize)
- move tests to the simplelog_test package (testpackage) and add
t.Parallel() (paralleltest)
- move NewWebhookHandler above its methods (funcorder)
- whitespace, line-length, and blank-line fixes (wsl_v5, whitespace,
nlreturn, lll, embeddedstructfieldcheck)
- nolint with justification for the intentional init/global design
(gochecknoinits, gochecknoglobals) and interface-returning
constructor (ireturn)
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
// Command relp_log_trial emits sample log messages through simplelog's
|
||||
// default slog handler for manual testing.
|
||||
package main
|
||||
|
||||
import (
|
||||
@@ -6,11 +8,22 @@ import (
|
||||
_ "sneak.berlin/go/simplelog" // Using underscore to only invoke init()
|
||||
)
|
||||
|
||||
// examplePort is the sample database port logged below.
|
||||
const examplePort = 5432
|
||||
|
||||
func main() {
|
||||
// Send some test messages with structured data
|
||||
slog.Info("Starting the application", slog.String("status", "initialized"))
|
||||
slog.Info("Attempting to connect to database", slog.String("host", "localhost"), slog.Int("port", 5432))
|
||||
slog.Info(
|
||||
"Attempting to connect to database",
|
||||
slog.String("host", "localhost"),
|
||||
slog.Int("port", examplePort),
|
||||
)
|
||||
slog.Warn("Using default configuration", slog.String("configuration", "default"))
|
||||
slog.Error("Failed to load module", slog.String("module", "finance"), slog.String("error", "module not found"))
|
||||
slog.Error(
|
||||
"Failed to load module",
|
||||
slog.String("module", "finance"),
|
||||
slog.String("error", "module not found"),
|
||||
)
|
||||
slog.Info("Shutting down the application", slog.String("status", "stopped"))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user