From 360591d6e18d8676a2f86185ed42f46852387f85 Mon Sep 17 00:00:00 2001 From: Lukasz Kasprzak Date: Mon, 14 Sep 2026 21:40:12 +0200 Subject: plan 9: content excludes fail closed; krino.conf excludes checked without directories --- internal/engine/engine.go | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'internal/engine/engine.go') diff --git a/internal/engine/engine.go b/internal/engine/engine.go index b50728e..7a83ccd 100644 --- a/internal/engine/engine.go +++ b/internal/engine/engine.go @@ -89,6 +89,15 @@ func Load(mainFile string, names ...string) (*Engine, []*config.Diag) { // A mistake inside a krino.conf exclude is compiled once per directory, // but reported once. reported := map[string]bool{} + if len(cfg.Dirs) == 0 { + // With no directory to compile them for, krino.conf's excludes are + // still checked, so a mistake is reported before one is included + // (review cli F10). + for _, x := range cfg.Main.Excludes { + _, cerrs := cond.Compile(cfg.Main.File, x.When, cond.Options{IgnoreCase: true, Fold: true}) + errs = append(errs, cerrs...) + } + } for _, d := range cfg.Dirs { dir := &Dir{ Name: d.Name, -- cgit v1.3