Fix every finding surfaced by the canonical .golangci.yml with golangci-lint v2.12.2 (refs #61), behavior-preserving throughout: - err113: dynamic errors replaced with package-level sentinels and %w wrapping; direct comparisons converted to errors.Is - goprintffuncname: printf-style helpers renamed with an f suffix (ui.Writer message methods, cli.ReportErrorf, database.Fatalf, vaultik stdoutf) and all call sites updated - revive: stuttering type names renamed (blob.Handler, blob.WithReader, blob.ChunkPosition, storage.URL, storage.Info), doc comments added, unused parameters blanked, package comments added - contextcheck/noctx: ctx threaded through blob.Packer (AddChunk/Flush/FinalizeBlob/PackChunks) and scanner call sites; context-aware exec and sql variants used - funlen/cyclop/gocognit/nestif/dupl: oversized or duplicated functions split into focused helpers across production and test code - paralleltest/tparallel/thelper/usetesting/testpackage: tests parallelized where safe (global log.Initialize kept in the serial phase), helpers marked, t.TempDir adopted, external test packages where only exported API is used - gosec: integer conversions clamped or justified, header timeouts added, remaining findings suppressed with per-site justifications - mnd/goconst/lll/wsl_v5/nlreturn/noinlineerr/errcheck and other mechanical findings fixed directly Remove the deprecated log.LogOptions alias (callers migrated to log.Options). make check is green.
28 lines
506 B
Go
28 lines
506 B
Go
package log
|
|
|
|
import (
|
|
"go.uber.org/fx"
|
|
)
|
|
|
|
// Module exports logging functionality for dependency injection.
|
|
//
|
|
//nolint:gochecknoglobals // fx module definitions are package globals
|
|
var Module = fx.Module("log",
|
|
fx.Invoke(func(cfg Config) {
|
|
Initialize(cfg)
|
|
}),
|
|
)
|
|
|
|
// New creates a new logger configuration from provided options.
|
|
func New(opts Options) Config {
|
|
return Config(opts)
|
|
}
|
|
|
|
// Options are provided by the CLI.
|
|
type Options struct {
|
|
Verbose bool
|
|
Debug bool
|
|
Cron bool
|
|
Quiet bool
|
|
}
|