From 5640d5d454f062dc52dbe07285df6385c8e75b8c Mon Sep 17 00:00:00 2001 From: yusing Date: Sun, 12 Oct 2025 20:59:12 +0800 Subject: [PATCH] fix(serialization): correctly handle json tag --- internal/serialization/serialization.go | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/internal/serialization/serialization.go b/internal/serialization/serialization.go index 1a4f153e..3cbe0e67 100644 --- a/internal/serialization/serialization.go +++ b/internal/serialization/serialization.go @@ -211,6 +211,10 @@ func initTypeKeyFieldIndexesMap(t reflect.Type) typeInfo { deserializeTag := field.Tag.Get(tagDeserialize) jsonTag := field.Tag.Get(tagJSON) + if jsonTag != "" { + jsonTag, _, _ = strings.Cut(jsonTag, ",") + } + if deserializeTag == "-" || jsonTag == "-" { continue } @@ -508,10 +512,10 @@ func ConvertString(src string, dst reflect.Value) (convertible bool, convErr gpe } // Early return for empty string - if src == "" { - dst.SetZero() - return true, nil - } + if src == "" { + dst.SetZero() + return true, nil + } switch dstT { case reflect.TypeFor[time.Duration]():