From 85cfadc5b0ffb3e00a560489905b8a9840503664 Mon Sep 17 00:00:00 2001 From: Claude Date: Sun, 12 Apr 2026 09:08:12 +0000 Subject: [PATCH] fix: fatal with clear message when keyvalue type is redis but redis is not enabled Instead of panicking with a nil pointer dereference when keyvalue.type is set to "redis" but redis.enabled is false, log a fatal error with a clear, actionable message telling the user to enable redis. Closes go-vikunja/vikunja#2608 https://claude.ai/code/session_01TRuPTGYDQjxqHRFWQaJGvy --- pkg/modules/keyvalue/keyvalue.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkg/modules/keyvalue/keyvalue.go b/pkg/modules/keyvalue/keyvalue.go index 87280a717..507f7322b 100644 --- a/pkg/modules/keyvalue/keyvalue.go +++ b/pkg/modules/keyvalue/keyvalue.go @@ -18,6 +18,7 @@ package keyvalue import ( "code.vikunja.io/api/pkg/config" + "code.vikunja.io/api/pkg/log" "code.vikunja.io/api/pkg/modules/keyvalue/memory" "code.vikunja.io/api/pkg/modules/keyvalue/redis" ) @@ -40,6 +41,9 @@ var store Storage func InitStorage() { switch config.KeyvalueType.GetString() { case "redis": + if !config.RedisEnabled.GetBool() { + log.Fatalf("keyvalue.type is set to %q but redis is not enabled. Please set redis.enabled to true in your configuration.", config.KeyvalueType.GetString()) + } store = redis.NewStorage() case "memory": fallthrough