# Changelog: @go/convert ## [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.Unmarshaler` 和 `yaml.Unmarshaler`。