Releases: intsig171/SmartCodable
V4.3.0: 日志系统大升级
- 优化日志性能,减少遍历。
- 优化属性日志的信息表达。
- 支持日志的导出,如有需求可以上传服务器。
- 优化日志格式:unkeyedContainer的解析格式化;格式的优化。
================================ [Smart Sentinel] ================================
Array<SomeModel> 👈🏻 👀
╆━ Index 0
┆┄ a: Expected to decode 'Int' but found ‘String’ instead.
┆┄ b: Expected to decode 'Int' but found ’Array‘ instead.
┆┄ c: No value associated with key.
╆━ sub: SubModel
┆┄ sub_a: No value associated with key.
┆┄ sub_b: No value associated with key.
┆┄ sub_c: No value associated with key.
╆━ sub2s: [SubTwoModel]
╆━ Index 0
┆┄ sub2_a: No value associated with key.
┆┄ sub2_b: No value associated with key.
┆┄ sub2_c: No value associated with key.
╆━ Index 1
┆┄ sub2_a: Expected to decode 'Int' but found ’Array‘ instead.
╆━ Index 1
┆┄ a: No value associated with key.
┆┄ b: Expected to decode 'Int' but found ‘String’ instead.
┆┄ c: Expected to decode 'Int' but found ’Array‘ instead.
╆━ sub: SubModel
┆┄ sub_a: Expected to decode 'Int' but found ‘String’ instead.
╆━ sub2s: [SubTwoModel]
╆━ Index 0
┆┄ sub2_a: Expected to decode 'Int' but found ‘String’ instead.
╆━ Index 1
┆┄ sub2_a: Expected to decode 'Int' but found 'null' instead.
====================================================================================
V4.2.6更新说明
【优化】优化继承关系下的父类属性的解析。
【新增】SmartAny支持修饰Model类型。
优化KeyMap映射关系
4.2.5 优化key的自定义映射规则
V4.2.3-BugFix 发布公告
【BugFix】修改非基本数据类型的自定义解析的失效问题。
【BugFix】修复key的映射关系中,当前值为null的判断错误问题。
【新功能】提供FastTransformer快捷ValueTransformer
CodingKeys.name <--- FastTransformer<String, String>(fromJSON: { json in
"abc"
},toJSON: { object in
"123"
})
V4.1.12 发布公告
- 【新功能】支持Combine,允许 @ Published修饰的属性解析。
- 【新功能】支持@igonreKey修饰的属性在encode时,不出现在json中(屏蔽这个属性key)
- 【新功能】支持encode时候的options,同decode的options使用。
- 【优化】Data类型在decode和encode时,只能使用base64解析.
4.1.7 - BugFix
"Fixed the crash issue when entering compatibility logic due to parsing failure, and added handling for cases where the data is NaN or exceeds the Int type range."
修复了解析失败时进入兼容逻辑导致的crash问题,针对数据为NaN或超出Int类型长度的情况进行了处理。
4.1.3 - SmartUpdater
Optimize implementation of SmartUpdater.
Optimize the precision of floating-point numbers
When the json data is not 4.99 and the attribute is String, it is internally compatible and returns "4.99" instead of "4.899999999 ".
new decoder, new encoder, new feature.
V4.0.0 Release Notes
New Feature: Support for watchOS usage
New Feature: Support for visionOS usage
New Feature: Support for tvOS usage
New Feature: Custom encoder support, allowing for custom encoding, i.e., mappingForValue.
New Feature: Support for custom strategies for any type of Value, including Int, Bool, etc.
Optimization: Optimized decoder, synchronized with the master branch of Codable.
Optimization: Improved enum parsing, no longer requiring defaultCase.
Optimization: Enhanced README with detailed Chinese instructions.
Bugfix: Fixed a memory issue in concurrent logging.
SmartAny使用优化
包含SmartAny的model转json失败的优化