forked from JoyChou93/java-sec-code
-
Notifications
You must be signed in to change notification settings - Fork 0
[LOW] Update dependency com.alibaba:fastjson to v2 #44
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
mend-for-github-com
wants to merge
1
commit into
master
Choose a base branch
from
whitesource-remediate/com.alibaba-fastjson-2.x
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
[LOW] Update dependency com.alibaba:fastjson to v2 #44
mend-for-github-com
wants to merge
1
commit into
master
from
whitesource-remediate/com.alibaba-fastjson-2.x
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
54803ce
to
aef19c4
Compare
aef19c4
to
e658e23
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
None yet
0 participants
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
1.2.24
->2.0.59
Release Notes
alibaba/fastjson2 (com.alibaba:fastjson)
v2.0.59
: fastjson 2.0.59发布Compare Source
这又是一个定期维护的功能增强BUG FIX版本,大家按需升级。
Issues
MAVEN依赖配置
这个版本支持java.time和Optional
3. 相关链接
v2.0.58
: Fastjson 2.0.58版本发布Compare Source
这又是一个定期维护的功能增强BUG FIX版本,大家按需升级。
@JSONField(defaultValue="")
和fastjson 1.x不兼容的问题MAVEN依赖配置
这个版本支持java.time和Optional
3. 相关链接
v2.0.57
: Fastjson 2.0.57版本发布Compare Source
这又是一个定期维护的功能增强BUG FIX版本,大家按需升级。
Issues
MAVEN依赖配置
这个版本支持java.time和Optional
3. 相关链接
v2.0.56
: fastjson 2.0.56版本发布,性能进一步提升Compare Source
这个版本进一步提升了性能,并且修复了2.0.54发布以来用户反馈的BUG。
Issues
@type
且位置不在json串开始位置时和fastjson 1.x行为不一致的问题 #3284MAVEN依赖配置
这个版本支持java.time和Optional
3. 相关链接
v2.0.55
Compare Source
v2.0.54
: fastjson 2.0.54版本发布,性能进一步提升Compare Source
这又是一个性能优化Bug修复的版本更新版本,大家按需升级。
1. 性能优化
这个版本的性能优化包括:
1.1 使用SWAR(SIMD Within A Register)技巧来优化序列化字符串的性能
序列化时,写字符串检测是否存在特别字符是一个性能关键点,这个版本使用SWAR(SIMD Within A Register)的技巧来做快速检测。如下
https://github.com/alibaba/fastjson2/blob/2.0.54/core/src/main/java/com/alibaba/fastjson2/JSONWriterUTF8.java#L484
1.2 优化在JDK 16+的readString性能
在JDK 16+的版本下,使用StringLatin1.indexOfChar方法加速扫描特殊字符,优化readString的性能。这个算法来自 wycst 的贡献。
https://github.com/alibaba/fastjson2/blob/2.0.54/core/src/main/java/com/alibaba/fastjson2/JSONReaderASCII.java#L1445
1.3 int/long/float/double的读取写性能
优化的技巧是一次性读取两个数字,如下:
https://github.com/alibaba/fastjson2/blob/2.0.54/core/src/main/java/com/alibaba/fastjson2/JSONReaderUTF8.java#L3506
这个优化最初灵感源泉来自 https://github.com/wycst/wast 的 io.github.wycst.wast.json.JSONTypeDeserializer.NumberImpl#deserializeInteger所采用的算法,然后做了进一步的改进。
2. Issues
{
不报错的问题 #2592fastjson2缺省是能识别Gson的Annotation的,这个可以通过接口或者JVM启动参数关闭
也支持通过JVM启动参数关闭
MAVEN依赖配置
这个版本支持java.time和Optional
3. 相关链接
v2.0.53
: fastjson 2.0.53版本发布Compare Source
这又是一个月度更新版本,大家按需升级。
Issues
2. MAVEN依赖配置
这个版本支持java.time和Optional
3. 相关链接
v2.0.52
: fastjson 2.0.52发布Compare Source
这又是一个月度例行发布的BUG FIX版本版本,大家按需升级。
Issues
@JSONType
同时指定WriteClassName与NotWriteRootClassName依然输出根类名问题 #2662@
符号 #2671@JSONField
对boolean属性支持 #27952. MAVEN依赖配置
这个版本支持java.time和Optional
3. 相关链接
v2.0.51
: fastjson 2.0.51发布Compare Source
这又是一个例行发布的BUG FIX版本版本,修复最近一个月用户反馈的问题,大家按需升级。
Issues
@type
字段的问题 #2581 #26232. MAVEN依赖配置
这个版本支持java.time和Optional
3. 相关链接
v2.0.50
: fastjson 2.0.50发布Compare Source
这又是一个例行月度更新的BUG FIX版本,大家按需升级。这个版本继续优化了JIT生成的代码,性能有提升,并且支持配置全局配置在JIT时去掉不必要功能的代码生成,提升性能。
注意已知问题
Issues
2. MAVEN依赖配置
这个版本支持java.time和Optional
3. 相关链接
v2.0.49
: fastjson 2.0.49发布Compare Source
这又是一个例行月度更新的BUG FIX版本,大家按需升级。
1. Issues
2. MAVEN依赖配置
这个版本和android4兼容版本基本一致,只是使用了java.nio.charset.StandardCharsets,后续将会不再升级android4兼容版本。
这个版本支持java.time和Optional
3. 相关链接
4. 关于稳定性
fastjson2 core部分已经积累6925个testcase,测试覆盖率75%,每个PR合入都需要分别在JDK8/11/17/21下跑通这些testcase,不断发现问题和使用深入和更多场景有关。
v2.0.48
: fastjson 2.0.48发布Compare Source
这又是一个性能优化 & Bug Fixed的版本,这个版本中,JSON.toJSONString和JSONB.toByte和JSONB.parseObject的性能有提升。
Issues
MAVEN依赖配置
这个版本和android4兼容版本基本一致,只是使用了java.nio.charset.StandardCharsets,后续将会不再升级android4兼容版本。
这个版本支持java.time和Optional
相关链接
v2.0.47
: fastjson 2.0.47发布Compare Source
这个版本主要是大幅度提升android版本的首次序列化/反序列化的性能。在序列化大于1M的JSON对象时性能也有了较大提升。
Issues
MAVEN依赖配置
这个版本和android4兼容版本基本一致,只是使用了java.nio.charset.StandardCharsets,后续将会不再升级android4兼容版本。