convert_del/CHANGELOG.md

1.7 KiB
Raw Blame History

Changelog: @go/convert

[v1.0.5] - 2026-05-04

Fixed

  • 兼容性修复:修复了由于 cast 库 API 变更导致的 MustJSONBytes 未定义错误,更新为 MustToJSONBytes

[v1.0.4] - 2026-04-30

Changed

  • 性能重构:重构了反射字段匹配逻辑,引入 sync.Map 缓存结构体元数据,性能从 O(N) 优化至 $O(1)$Benchmark 结果约为 1020 ns/op
  • 匹配策略优化:实现了“分层模糊匹配”,确保在保留“零摩擦”模糊匹配哲学的同时,适配更多不规范命名风格(如下划线、中划线、大小写混用)。
  • 防御性强化:重构了 To 函数中的指针解引用与初始化逻辑,移除了由于 nil 指针或非法嵌套引起的 Panic 风险,支持多级指针自动分配内存。
  • 辅助函数优化:将 FlattenStruct 的内部递归逻辑重构为高性能 Visitor 模式,增加了深度递归防护。

[v1.0.0] - 2026-04-22

Added

  • 核心映射引擎:基于反射的深度对象转换功能,支持 Struct, Map, Slice。
  • 意图优先设计:支持单值与切片的自动包装/解包转换。
  • 智能字符串转换:支持将 CSV 格式字符串 ("a,b,c") 自动转为切片。
  • 极致去摩擦匹配:键名映射时自动忽略大小写及所有非字母数字字符(如 _, -, # 等)。
  • 函数桥接器:支持将一个函数转换为另一个签名的函数,并自动处理参数转换。
  • Parse 钩子:支持通过 ParseXxx 方法定制特定字段的转换逻辑。
  • 平展工具:提供 FlatStruct 辅助函数用于获取结构体的扁平化字段信息。
  • 接口兼容:原生支持 json.Unmarshaleryaml.Unmarshaler