Avoid double printing INFO deprecation messages

Fixes #11645
This commit is contained in:
Bjørn Erik Pedersen 2023-11-01 15:15:34 +01:00
parent a9079d7a63
commit 80f793c38d
6 changed files with 28 additions and 30 deletions

View file

@ -441,11 +441,11 @@ func (r *rootCommand) createLogger(running bool) (loggers.Logger, error) {
} }
optsLogger := loggers.Options{ optsLogger := loggers.Options{
Distinct: true, DistinctLevel: logg.LevelWarn,
Level: level, Level: level,
Stdout: r.Out, Stdout: r.Out,
Stderr: r.Out, Stderr: r.Out,
StoreErrors: running, StoreErrors: running,
} }
return loggers.New(optsLogger), nil return loggers.New(optsLogger), nil

View file

@ -40,7 +40,7 @@ type Options struct {
Level logg.Level Level logg.Level
Stdout io.Writer Stdout io.Writer
Stderr io.Writer Stderr io.Writer
Distinct bool DistinctLevel logg.Level
StoreErrors bool StoreErrors bool
HandlerPost func(e *logg.Entry) error HandlerPost func(e *logg.Entry) error
SuppressStatements map[string]bool SuppressStatements map[string]bool
@ -92,8 +92,8 @@ func New(opts Options) Logger {
logHandler = multi.New(handlers...) logHandler = multi.New(handlers...)
var logOnce *logOnceHandler var logOnce *logOnceHandler
if opts.Distinct { if opts.DistinctLevel != 0 {
logOnce = newLogOnceHandler(logg.LevelWarn) logOnce = newLogOnceHandler(opts.DistinctLevel)
logHandler = newStopHandler(logOnce, logHandler) logHandler = newStopHandler(logOnce, logHandler)
} }
@ -137,10 +137,10 @@ func New(opts Options) Logger {
// NewDefault creates a new logger with the default options. // NewDefault creates a new logger with the default options.
func NewDefault() Logger { func NewDefault() Logger {
opts := Options{ opts := Options{
Distinct: true, DistinctLevel: logg.LevelWarn,
Level: logg.LevelWarn, Level: logg.LevelWarn,
Stdout: os.Stdout, Stdout: os.Stdout,
Stderr: os.Stdout, Stderr: os.Stdout,
} }
return New(opts) return New(opts)
} }

View file

@ -29,10 +29,10 @@ func TestLogDistinct(t *testing.T) {
c := qt.New(t) c := qt.New(t)
opts := loggers.Options{ opts := loggers.Options{
Distinct: true, DistinctLevel: logg.LevelWarn,
StoreErrors: true, StoreErrors: true,
Stdout: io.Discard, Stdout: io.Discard,
Stderr: io.Discard, Stderr: io.Discard,
} }
l := loggers.New(opts) 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 1")
c.Assert(sb.String(), qt.Contains, "ERROR") c.Assert(sb.String(), qt.Contains, "ERROR")
} }
func TestLogCount(t *testing.T) { 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.Not(qt.Contains), "error 1")
c.Assert(errorsStr, qt.Contains, "error 2") c.Assert(errorsStr, qt.Contains, "error 2")
c.Assert(l.LoggCount(logg.LevelError), qt.Equals, 1) c.Assert(l.LoggCount(logg.LevelError), qt.Equals, 1)
} }
func TestReset(t *testing.T) { func TestReset(t *testing.T) {
c := qt.New(t) c := qt.New(t)
opts := loggers.Options{ opts := loggers.Options{
StoreErrors: true, StoreErrors: true,
Distinct: true, DistinctLevel: logg.LevelWarn,
Stdout: io.Discard, Stdout: io.Discard,
Stderr: io.Discard, Stderr: io.Discard,
} }
l := loggers.New(opts) l := loggers.New(opts)

View file

@ -31,9 +31,9 @@ func InitGlobalLogger(level logg.Level, panicOnWarnings bool) {
log = New( log = New(
Options{ Options{
Level: level, Level: level,
Distinct: true, DistinctLevel: logg.LevelInfo,
HandlerPost: logHookLast, HandlerPost: logHookLast,
}, },
) )
} }

View file

@ -394,10 +394,10 @@ func (s *IntegrationTestBuilder) initBuilder() error {
logger := loggers.New( logger := loggers.New(
loggers.Options{ loggers.Options{
Stdout: w, Stdout: w,
Stderr: w, Stderr: w,
Level: s.Cfg.LogLevel, Level: s.Cfg.LogLevel,
Distinct: true, DistinctLevel: logg.LevelWarn,
}, },
) )

View file

@ -117,7 +117,7 @@ func NewHugoSites(cfg deps.DepsCfg) (*HugoSites, error) {
logOpts := loggers.Options{ logOpts := loggers.Options{
Level: cfg.LogLevel, 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, HandlerPost: logHookLast,
Stdout: cfg.LogOut, Stdout: cfg.LogOut,
Stderr: cfg.LogOut, Stderr: cfg.LogOut,