From 0f54dc43d0f4946b32c61c4915d05223bb238339 Mon Sep 17 00:00:00 2001 From: kolaente Date: Wed, 8 Apr 2026 10:27:34 +0200 Subject: [PATCH] fix: use RememberValue for task attachment preview cache Migrate task attachment preview caching to RememberValue[[]byte] so it works correctly with Redis gob-encoded values. --- pkg/models/task_attachment.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkg/models/task_attachment.go b/pkg/models/task_attachment.go index 294b4c384..23e3fb5c4 100644 --- a/pkg/models/task_attachment.go +++ b/pkg/models/task_attachment.go @@ -229,7 +229,7 @@ func cacheKeyForTaskAttachmentPreview(id int64, size PreviewSize) string { func (ta *TaskAttachment) GetPreview(previewSize PreviewSize) []byte { cacheKey := cacheKeyForTaskAttachmentPreview(ta.ID, previewSize) - result, err := keyvalue.Remember(cacheKey, func() (any, error) { + result, err := keyvalue.RememberValue(cacheKey, func() ([]byte, error) { // Read all bytes up front so we can inspect dimensions without seeking. // The file is an io.ReadCloser (no Seek), so we buffer it once. data, err := io.ReadAll(ta.File.File) @@ -273,7 +273,7 @@ func (ta *TaskAttachment) GetPreview(previewSize PreviewSize) []byte { return nil } - return result.([]byte) + return result } type PreviewSize string