Skip to content

Releases: alibaba/fastjson2

fastjson 2.0.23版本发布

14 Jan 13:33
Compare
Choose a tag to compare

这又是一个BUG FIX功能增强版本,大家根据需要升级。

Issues

  1. 修复通过JSONType指定FieldBased某些场景下导致空指针的问题 #1054
  2. 修复某些场景toJavaObject会导致内存溢出的问题 #1047
  3. 修复2.0.22引入的泛型参数为BigDecimal时序列化异常的问题 #1049
  4. 修复JSON.toJSONString(object, filter, ...features)存在filter时features不生效 #1030
  5. 修复JSON.parseArray某些场景处理非法输入不报错的问题 #1058
  6. 增强对JSONPath.remove的支持 #1059
  7. 增掐对日期格式不匹配场景的支持 #1060 #1067
  8. 修复输入类型不匹配的支持 #1061
  9. 增加LocalDateTime格式自动识别格式yyyyMMddHHmmssSSS #1065
  10. 增加none-string key Map类型对autotype的支持 #1069
  11. 修复JSONPath在[*]嵌套语法extract某些场景结果不对的问题 #1070
  12. 修复offset不为0时处理注释不对的问题 #1073

MAVEN依赖配置

<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.23</version>
</dependency>
  • 1.x 兼容版本
<dependency>
	<groupId>com.alibaba</groupId>
	<artifactId>fastjson</artifactId>
	<version>2.0.23</version>
</dependency>
  • Spring 5 extension配置
<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2-extension-spring5</artifactId>
	<version>2.0.23</version>
</dependency>
  • Spring 6 extension配置
<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2-extension-spring6</artifactId>
	<version>2.0.23</version>
</dependency>

相关链接

FASTJSON 2.0.22版本发布,BUG FIX提升兼容性

31 Dec 00:17
Compare
Choose a tag to compare

这又是一个BUG FIX功能增强版本,很多用户已经开始从FASTJSON 1.x测试升级到FASTJSON 2.0。DUBBO 3在测试FASTJSON 2。同时也有一些大数据场景开始使用FASTJSON 2的JSONPath。这个过程发现了一些问题,也产生了新的需求,需要快速解决,所以最近发布新版本比较频繁,大家按需升级,使用兼容API的用户,建议使用最新版本。

Issues

  1. 提供支持JSONArray.copyOf方法 #1002
  2. 设置Filter之后只要值为null时Feature即使设置输出NULL都不会输出该KEY #1004
  3. 修复某些场景toJavaObject报错 #1000 #1034 #1038 #1031
  4. 增加FastjsonView,兼容fastjson 1.x
  5. 同一个版本中支持Android和GraalVM #1021
  6. 兼容API序列化输出兼容1.x的命名策略 #1022 #970
  7. 当字符串存在大量需要转义字符时出现数组越界异常 #1025
  8. 修复JSONB在Map中反序列化LocalTime/LocalDateTime报错的问题 #1026
  9. 支持decimalFormat #1029
  10. 修复FieldBased打开时Swagger2 /v2/api-docs 返回多嵌套了一层 #1033
  11. 支持java.nio.file.Path类型的序列化 #1040
  12. 修复序列化二进制格式字符串某些场景报错的问题 #1041
  13. 修复JSONPath在输入为空时某些场景报错的问题 #1018

MAVEN依赖配置

<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.22</version>
</dependency>
  • 1.x 兼容版本
<dependency>
	<groupId>com.alibaba</groupId>
	<artifactId>fastjson</artifactId>
	<version>2.0.22</version>
</dependency>

相关链接

FASTJSON 2.0.21版本发布,BUG FIX提升兼容性

10 Dec 18:04
Compare
Choose a tag to compare

这又是一个BUG FIX功能增强版本,很多用户已经开始从FASTJSON 1.x测试升级到FASTJSON 2.0。DUBBO 3在测试FASTJSON 2。同时也有一些大数据场景开始使用FASTJSON 2的JSONPath。这个过程发现了一些问题,也产生了新的需求,需要快速解决,所以最近发布新版本比较频繁,大家按需升级,使用兼容API的用户,建议使用最新版本。

Issues

  1. 反序列化支持自动识别英语MMM日期格式 #997
  2. 修复JSONSchema某种场景空指针的异常 #986
  3. 修复parseArray方法不兼容的问题 #984
  4. 增加FASTJSON 1.x BrowserSecure的兼容支持 #964
  5. 修复Enum序列化mixin与WriteEnumUsingToString同时配置时不起作用的问题 #971
  6. Enum成员支持JSONField配置输出名字
  7. JSONPath兼容FASTJSON 1.x设置数字属性 #956
  8. 增强对Boolean类型的自动识别 #976
  9. 支持Probuf对象序列化为JSON格式 #982
  10. 修复首字母大写字段无法反序列化的问题 #983
  11. JSONObject.toJavaObject某些场景报错的问题 #1001
  12. 支持自动识别Jackson Annotation JsonFormat的日期格式配置 #1003
  13. 支持将空字符串识别为NULL #998
  14. 增强对JDK 14 Record类型反序列化的支持 #994
  15. 修复JVM参数-XX:-CompactStrings配置下导致反序列化源码的问题
  16. 修复ObjectReaderProvider/ObjectWriterProvider的cleanUp方法在复杂场景不起作用的问题
  17. 进一步提升了JSONB格式的序列化和反序列化性能
  18. 修复特定场景下序列化生成ObjectWriter时报Timsort异常的问题

MAVEN依赖配置

<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.21</version>
</dependency>
  • GraalVM版本
<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.21.graal</version>
</dependency>
  • Android版本
<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.21.android</version>
</dependency>
  • 1.x 兼容版本
<dependency>
	<groupId>com.alibaba</groupId>
	<artifactId>fastjson</artifactId>
	<version>2.0.21</version>
</dependency>

相关链接

fastjson 2.0.20发布,修复DUBBO3测试发现的问题并增强对大数据场景的支持

27 Nov 19:13
Compare
Choose a tag to compare

这又是一个BUG FIX功能增强版本,FASTJSON 2.0在GITHUB的use repos数量已经超过1500。很多用户已经开始从FASTJSON 1.x测试升级到FASTJSON 2.0。DUBBO 3在测试FASTJSON 2。同时也有一些大数据场景开始使用FASTJSON 2的JSONPath。这个过程发现了一些问题,也产生了新的需求,需要快速解决,所以最近发布新版本比较频繁,大家按需升级,使用兼容API的用户,建议使用最新版本。

Issues

  1. 修复了Lombok Value Annotation支持的问题 #923
  2. 修复了ZonedDateTime序列化结果导致其他的json库不能识别的问题 #933
  3. 修复了写入double数组会导致报错的问题 #951
  4. 修复了DateUtils.toMillis19方法不支持12月数据Parse的问题 #952
  5. 修复了部分场景JSONWriter.Feature.WriteLongAsString失效的问题 #961
  6. 修复SimplePropertyPreFilter#excludes逻辑不对的问题 #967
  7. 修复部分场景Parse科学计数法格式double类型报错的问题 #959
  8. 修复了AutoType打开时,嵌套对象的HashMap类型无法被识别的问题 #947
  9. 修复序列化Oracle CLOB类型报错的问题 #920
  10. 修复在Kotlin下某些场景WriteEnumUsingToString不生效的问题 #928 #939
  11. 修复某些场景下不能识别lombok字段上的@JSONField Annotation的问题 #942
  12. 提升了FASTJSON 1.x兼容 #929
  13. 增强了JSONPath对大数据场景的优化支持 #937 相关文档

MAVEN依赖配置

<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.20</version>
</dependency>
  • GraalVM版本
<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.20.graal</version>
</dependency>
  • Android版本
<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.20.android</version>
</dependency>
  • 1.x 兼容版本
<dependency>
	<groupId>com.alibaba</groupId>
	<artifactId>fastjson</artifactId>
	<version>2.0.20</version>
</dependency>

相关链接

fastjson 2.0.19版本发布,BUG修复增强兼容

12 Nov 07:56
Compare
Choose a tag to compare

这又是一个BUG修复增强fastjson 1.x的兼容版本。这个版本通过和阿里内部生产环境和fastjson 1.2.68版本做兼容比对,很大程度提升了对fastjson 1.x的兼容。

Issues

  1. 修复了多个和fastjson 1.x不兼容的问题
  2. 修复12个字段时JSONObject.toJavaObject方法会丢失字段的问题 #900
  3. 修复不支持IBM J9 JDK11的问题 #888
  4. JSONPath增加对contains函数的支持
  5. 增强对ValueFilter的支持 #906
  6. 增加JSONObject/JSONArray#getDate方法对非法输入的校验 #912
  7. 修复不支持Oracle CLOB类型序列化的问题 #920
  8. 反序列化增加对JDK9 ImmutableCollections的支持 #913 #917
  9. 修复JSONObject#toJavaObject方法不支持Feature.SupportClassForName #914
  10. 修复不支持Jackson ObjectNode类型序列化的问题 #921
  11. 修复大写单字母字段序列化大小写不对的问题 #924

MAVEN依赖配置

<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.19</version>
</dependency>
  • GraalVM版本
<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.19.graal</version>
</dependency>
  • Android版本
<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.19.android</version>
</dependency>
  • 1.x 兼容版本
<dependency>
	<groupId>com.alibaba</groupId>
	<artifactId>fastjson</artifactId>
	<version>2.0.19</version>
</dependency>

相关链接

fastjson 2.0.18版本发布,BUG修复增强兼容

06 Nov 02:59
Compare
Choose a tag to compare

这又是一个bug修复版本,主要是修复用户生产验证过程中发现的BUG以及对fastjson 1.x用法不兼容的问题

Issues

  1. 修复某些场景下当对象恰好12个字段时,会导致其中一个字段错乱的问题 #894 #900 #893
  2. 增强对kotlin的支持 #895
  3. 修复JSONPath.set不支持JSONField.unwrap #897
  4. 修复LocalDateTime类型不支持dotnet日期格式的问题 #896
  5. 修复不支持long类型不支持自定义序列化的问题 #891
  6. 修复ThreadContextClassLoader为空时空指针报错的问题 #899
  7. JSONPath支持AlwaysReturnList #902
  8. 修复在依赖类不存在时会抛ClassNotFound异常的问题 #892

MAVEN依赖配置

<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.18</version>
</dependency>
  • GraalVM版本
<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.18.graal</version>
</dependency>
  • Android版本
<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.18.android</version>
</dependency>
  • 1.x 兼容版本
<dependency>
	<groupId>com.alibaba</groupId>
	<artifactId>fastjson</artifactId>
	<version>2.0.18</version>
</dependency>

相关链接

fastjson 2.0.17版本发布,增强兼容修复dubbo测试中发现的问题

30 Oct 01:53
Compare
Choose a tag to compare

这又是一个bug修复版本,主要是修复dubbo用户测试过程中对rocketmq fastjson 1.x用法不兼容的问题

issues

  1. 修复dubbo测试反馈的rocketmq client兼容fastjson 1.x的问题 #865
  2. 修复JSONWriter.Feature组合有些情况结果不符合预期的问题 #878
  3. 修复JSONPath兼容fastjson 1.x的read方法的问题 #874
  4. 修复不支持Long类型不能自定义序列化的问题
  5. 修复JSONPath.set方法在对象不存在时设置不起作用的问题 #858 #842
  6. 修复不支持BigDecimal类型不能自定义序列化的问题

MAVEN依赖配置

<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.17</version>
</dependency>
  • GraalVM版本
<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.17.graal</version>
</dependency>
  • Android版本
<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.17.android</version>
</dependency>
  • 1.x 兼容版本
<dependency>
	<groupId>com.alibaba</groupId>
	<artifactId>fastjson</artifactId>
	<version>2.0.17</version>
</dependency>

相关链接

fastjson 2.0.16版本发布,增强兼容修复dubbo测试中发现的问题

22 Oct 09:58
Compare
Choose a tag to compare

这个版本继续提升对dubbo的支持,为jsonb协议在dubbo中推广做准备。继续提升对fastjson 1.x的兼容性,方便fastjson 1.x的用户迁移到2.0.x。

Issues

  1. 修复JSONObject空值时出现冗余逗号的问题 #828 #837 #843
  2. 修复自动识别Jackson JsonProperty Annotation属性READ_ONLY和WRITE_ONLY错误的问题 #830
  3. 修复不支持kotlin any类型序列化的问题 #848
  4. 新增加JSONWriter.Feature.LargeObject支持序列化超过64M的对象 #841
  5. 修复兼容API JSONField.alternateNames某些场景报错的问题 #778
  6. 新增加JSONReader.Feature.IgnoreCheckClose支持Parse部分JSON数据 #862
  7. 修复兼容API不能识别SerializerFeature.WriteEnumUsingName的问题 #859
  8. 增加反序列Date类型识别输入0的识别 #861
  9. 修复writeFloat(float[])方法某些场景下数据越界报错的问题 #860
  10. 修复JSONObject不支持Integer auto cast to Boolean的问题 #854
  11. 支持Enum类型自定义序列化和反序列化 #851
  12. 修复JSONObject.toJavaObject某写场景会导致字段丢失的问题 #823
  13. 修复兼容API不支持none-string key的问题 #822
  14. 修复某些场景JSONPath.set不启作用的问题 #842
  15. Long & BigDecimal支持自动以序列化 #820
  16. 修复Integer类型不支持识别空字符串的问题 #827
  17. 修复JSONType#serializeEnumAsJavaBean某些场景不起作用的问题 #835
  18. 修复enum配置多参数JSONCreator不启作用的问题 #829
  19. 修复spring-demo不对的问题 #818
  20. 兼容API支持设置全局Feature #817

MAVEN依赖配置

<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.16</version>
</dependency>
  • GraalVM版本
<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.16.graal</version>
</dependency>
  • Android版本
<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.16.android</version>
</dependency>
  • 1.x 兼容版本
<dependency>
	<groupId>com.alibaba</groupId>
	<artifactId>fastjson</artifactId>
	<version>2.0.16</version>
</dependency>

相关链接

fastjson 2.0.15版本发布,增强兼容修复dubbo测试中发现的问题

05 Oct 06:00
Compare
Choose a tag to compare

这个版本继续提升对dubbo的支持,为jsonb协议在dubbo中推广做准备。继续提升对fastjson 1.x的兼容性,方便fastjson 1.x的用户迁移到2.0.x。

Issues

  1. 修复对jdk moudule的支持 #780
  2. 支持Annotation组合 #795
  3. 修复某些场景对Spring增强代理对象不能正确识别的问题 #798
  4. 增强对非静态内嵌类反序列化的支持 #367
  5. 增加序列化对IgnoreNonFieldGetter的支持 #764
  6. 修复对单字母Camel格式反序列化兼容识别的问题 #779
  7. 支持动态模块的类清理 #783
  8. 修复指定格式但输入不符合格式在兼容模式下的支持 #740
  9. 修复JSONObject & JSONArray getString对UUID/Date/Enum类型下结果返回不对的问题 #794
  10. 新增加Annotation JSONAutowired,方便实现CodeGen #796
  11. 兼容模式IOUtils增加close方法,增强对fastjson 1.x的兼容 #797
  12. 支持ExtraProcessor,增强对fastjson 1.x的兼容 #583
  13. 支持java.util.Date类型自定义序列化 #781
  14. 修复某些场景反序列化异常类丢失message信息的问题
  15. 提升首次序列化和反序列化的性能。

MAVEN依赖配置

<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.15</version>
</dependency>
  • GraalVM版本
<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.15.graal</version>
</dependency>
  • Android版本
<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.15.android</version>
</dependency>
  • 1.x 兼容版本
<dependency>
	<groupId>com.alibaba</groupId>
	<artifactId>fastjson</artifactId>
	<version>2.0.15</version>
</dependency>

相关链接

fastjson 2.0.14发布,修复dubbo测试中发现的问题

16 Sep 23:06
Compare
Choose a tag to compare

这个版本主要是修复dubbo测试jsonb过程中发现的问题,快速发布新版本,当然也同时修复了2.0.13发布以来用户反馈的问题。

详细性能测试报告看这里: https://github.com/alibaba/fastjson2/wiki/fastjson_benchmark

感谢 @jiangqiang1996 在2.0.14版本中提供了一个spring-boot demo项目,代码路径
https://github.com/alibaba/fastjson2/blob/main/spring-test/

Issues

  1. 修jsonb反序列化Map类型长度为5的fieldName某些场景结果不对的问题
  2. 修复无法拦截非 Serializable 的类进行序列化的问题 #756
  3. 开启 WriteClassName 之后反序列化含 Class<?> 属性的对象失败 #752
  4. 修复ContextAutoTypeBeforeHandler 跨 ClassLoader 使用时 classCache 缓存会导致类转换异常的问题 #753
  5. 修复内部类公开构造器使用 FieldBased 模式反序列化失败的问题 #751
  6. 修复ContextAutoTypeBeforeHandler 无法处理内部类的问题 #750
  7. 修复配置 autoTypeFilter 之后无法正常反序列化 String[] 的问题 #749
  8. 修复JSONPath.set当中间属性为空无法设置的问题
  9. 修复java.util.Date在有millis时序列化结果带时区的问题 #762
  10. 修复Map<String, Integer>类型不支持输入@type autoType的问题 #771
  11. 修复某些场景@JSONField不起作用的问题 #765
  12. 修复JSONSchema某些场景校验结果getMessage报错的问题 #770
  13. 修复序列化时如果指定了Filters时IgnoreGetterError配置不起作用的问题 #769
  14. 修复Feature.IgnoreNonFieldGetter结果不对的问题 #764
  15. 修复\0结尾字符解析出错的问题 #757
  16. 提升FastJsonHttpMessageConverter性能
  17. 提升Date/LocalTime/LocalDate/LocalDateTime/ZonedDateTime类型序列化的性能
  18. 修复反序列化SimpleGrantedAuthority依赖jackson的问题

MAVEN依赖配置

<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.14</version>
</dependency>
  • GraalVM版本
<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.14.graal</version>
</dependency>
  • Android版本
<dependency>
	<groupId>com.alibaba.fastjson2</groupId>
	<artifactId>fastjson2</artifactId>
	<version>2.0.14.android</version>
</dependency>
  • 1.x 兼容版本
<dependency>
	<groupId>com.alibaba</groupId>
	<artifactId>fastjson</artifactId>
	<version>2.0.14</version>
</dependency>

相关链接