From 80f793c38d250ca87b6083eb48d7420baaffd02c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Erik=20Pedersen?= Date: Wed, 1 Nov 2023 15:15:34 +0100 Subject: [PATCH] Avoid double printing INFO deprecation messages Fixes #11645 --- commands/commandeer.go | 10 +++++----- common/loggers/logger.go | 14 +++++++------- common/loggers/logger_test.go | 18 ++++++++---------- common/loggers/loggerglobal.go | 6 +++--- hugolib/integrationtest_builder.go | 8 ++++---- hugolib/site_new.go | 2 +- 6 files changed, 28 insertions(+), 30 deletions(-) diff --git a/commands/commandeer.go b/commands/commandeer.go index c3e2019b5..5d414b04a 100644 --- a/commands/commandeer.go +++ b/commands/commandeer.go @@ -441,11 +441,11 @@ func (r *rootCommand) createLogger(running bool) (loggers.Logger, error) { } optsLogger := loggers.Options{ - Distinct: true, - Level: level, - Stdout: r.Out, - Stderr: r.Out, - StoreErrors: running, + DistinctLevel: logg.LevelWarn, + Level: level, + Stdout: r.Out, + Stderr: r.Out, + StoreErrors: running, } return loggers.New(optsLogger), nil diff --git a/common/loggers/logger.go b/common/loggers/logger.go index a50502897..bc64ae0e5 100644 --- a/common/loggers/logger.go +++ b/common/loggers/logger.go @@ -40,7 +40,7 @@ type Options struct { Level logg.Level Stdout io.Writer Stderr io.Writer - Distinct bool + DistinctLevel logg.Level StoreErrors bool HandlerPost func(e *logg.Entry) error SuppressStatements map[string]bool @@ -92,8 +92,8 @@ func New(opts Options) Logger { logHandler = multi.New(handlers...) var logOnce *logOnceHandler - if opts.Distinct { - logOnce = newLogOnceHandler(logg.LevelWarn) + if opts.DistinctLevel != 0 { + logOnce = newLogOnceHandler(opts.DistinctLevel) logHandler = newStopHandler(logOnce, logHandler) } @@ -137,10 +137,10 @@ func New(opts Options) Logger { // NewDefault creates a new logger with the default options. func NewDefault() Logger { opts := Options{ - Distinct: true, - Level: logg.LevelWarn, - Stdout: os.Stdout, - Stderr: os.Stdout, + DistinctLevel: logg.LevelWarn, + Level: logg.LevelWarn, + Stdout: os.Stdout, + Stderr: os.Stdout, } return New(opts) } diff --git a/common/loggers/logger_test.go b/common/loggers/logger_test.go index 1b42eff53..6f589aafe 100644 --- a/common/loggers/logger_test.go +++ b/common/loggers/logger_test.go @@ -29,10 +29,10 @@ func TestLogDistinct(t *testing.T) { c := qt.New(t) opts := loggers.Options{ - Distinct: true, - StoreErrors: true, - Stdout: io.Discard, - Stderr: io.Discard, + DistinctLevel: logg.LevelWarn, + StoreErrors: true, + Stdout: io.Discard, + Stderr: io.Discard, } l := loggers.New(opts) @@ -85,7 +85,6 @@ func TestOptionStoreErrors(t *testing.T) { c.Assert(sb.String(), qt.Contains, "error 1") c.Assert(sb.String(), qt.Contains, "ERROR") - } func TestLogCount(t *testing.T) { @@ -124,17 +123,16 @@ func TestSuppressStatements(t *testing.T) { c.Assert(errorsStr, qt.Not(qt.Contains), "error 1") c.Assert(errorsStr, qt.Contains, "error 2") c.Assert(l.LoggCount(logg.LevelError), qt.Equals, 1) - } func TestReset(t *testing.T) { c := qt.New(t) opts := loggers.Options{ - StoreErrors: true, - Distinct: true, - Stdout: io.Discard, - Stderr: io.Discard, + StoreErrors: true, + DistinctLevel: logg.LevelWarn, + Stdout: io.Discard, + Stderr: io.Discard, } l := loggers.New(opts) diff --git a/common/loggers/loggerglobal.go b/common/loggers/loggerglobal.go index 8b8e8cfc2..6fd474a69 100644 --- a/common/loggers/loggerglobal.go +++ b/common/loggers/loggerglobal.go @@ -31,9 +31,9 @@ func InitGlobalLogger(level logg.Level, panicOnWarnings bool) { log = New( Options{ - Level: level, - Distinct: true, - HandlerPost: logHookLast, + Level: level, + DistinctLevel: logg.LevelInfo, + HandlerPost: logHookLast, }, ) } diff --git a/hugolib/integrationtest_builder.go b/hugolib/integrationtest_builder.go index 54085070c..14509657a 100644 --- a/hugolib/integrationtest_builder.go +++ b/hugolib/integrationtest_builder.go @@ -394,10 +394,10 @@ func (s *IntegrationTestBuilder) initBuilder() error { logger := loggers.New( loggers.Options{ - Stdout: w, - Stderr: w, - Level: s.Cfg.LogLevel, - Distinct: true, + Stdout: w, + Stderr: w, + Level: s.Cfg.LogLevel, + DistinctLevel: logg.LevelWarn, }, ) diff --git a/hugolib/site_new.go b/hugolib/site_new.go index ac59e01c7..da9d19f21 100644 --- a/hugolib/site_new.go +++ b/hugolib/site_new.go @@ -117,7 +117,7 @@ func NewHugoSites(cfg deps.DepsCfg) (*HugoSites, error) { logOpts := loggers.Options{ Level: cfg.LogLevel, - Distinct: true, // This will drop duplicate log warning and errors. + DistinctLevel: logg.LevelWarn, // This will drop duplicate log warning and errors. HandlerPost: logHookLast, Stdout: cfg.LogOut, Stderr: cfg.LogOut,