Releases: FISCO-BCOS/java-sdk
Java SDK v2.9.1
v2.9.1
(2022-06-15)
Please read documentation of Java SDK.
Fix:
- Fixed an issue where 'solidity' generated 'Java' contract code could not compile
- Fix null pointer exception on class TransactionPusherService method pushOnly
请参考文档:
修复:
- 修复
solidity
生成Java
合约代码无法编译的问题 - 修复
TransactionPusherService
类pushOnly
接口空指针异常的问题
Java SDK v3.0.0-rc2-bugfix
- 更新bcos-sdk-jni,解决内存泄露的问题
- 更新bcos-sdk-jni,解决windows动态库加载失败的问题
Java SDK v2.9.0
v2.9.0
(2022-05-12)
Please read documentation of Java SDK.
Added:
JavaSDK
supportAPPLE M1
CodeGen
contract code generator supportStruct
params type- Added interface to dynamically update 'P2P' connection list:
addPeers
queryPeers
erasePeers
Update:
- upgrade Netty to
4.1.77
- other dependent version upgrades
Fixed:
- Fixed an issue where
getCode
was called after deployment contract failure and the node returned 'RPC' request parameter type did not match - Fixed null pointer exception when calling
isStatusOK
in empty object transaction receipt - Fixed issue where
Linux ARM
environment could not load cryptography dynamic library - Fixed
ABICodec
resolving contract constructor argument exception - Fixed
ABICodec
failing to parse transaction receiptevent
#352 #498
请参考文档:
添加:
JavaSDK
支持APPLE M1
CodeGen
Java
合约代码生成支持Struct
类型- 新增动态更新节点
P2P
连接列表接口:addPeers
queryPeers
erasePeers
更新:
- 升级Netty至
4.1.77
- 其他的依赖版本升级
修复:
- 修复部署合约失败后调用
getCode
,节点返回RPC
请求参数类型不匹配的问题 - 修复在交易回执会对象调用
isStatusOK
空指针异常的问题 - 修复
Linux Arm
环境加载密码学动态库失败的问题 - 修复
ABICodec
解析合约构造函数参数异常的问题 - 修复
ABICodec
解析交易回执event
失败的问题#352 #498
兼容性:
- 适配FISCO BCOS v2.0+
- AMOP功能不兼容Web3SDK
Java SDK v2.8.1
(2022-04-29)
Please read documentation of Java SDK.
Added:
- add decodeTransactionInput to ABICodec #360
Update:
- optimize java-sdk connection error message #536
Fix:
- fix serialize ABIDefinition with fallback failed #302
Compatibility
- FISCO BCOS v2.0+
- AMOP Not compatible with Web3SDK
请参考文档:
添加:
- ABICodec支持decodeTransactionInput
更新:
- 优化java-sdk初始化失败错误提示
修复:
- 修复ABI fallback接口序列化失败的问题
适配性:
- 适配FISCO BCOS v2.0+
- AMOP功能不兼容Web3SDK
Java SDK v3.0.0-rc3
v3.0.0-rc3
(2022-03-31)
请阅读Java SDK v3.x+文档:
新增
- 支持Solidity合约并行冲突字段解析
- 添加getABI接口
更新
- 调用
bcos-c-sdk
的接口实现交易编解码功能 - 调用
bcos-c-sdk
的接口实现密码算法 - 升级
bcos-sdk-jni
到3.0.0-rc3
org.fisco.bcos.sdk
包路径修改为org.fisco.bcos.sdk.v3
- sdk-abi代码重构
- BFS link取代CNS
修复
- 修复AMOP
getTopics
返回null导致的异常 - 修复#issue 510,解决windows环境无法找不到
libbcos-sdk-jni.dll
动态库的问题 - 修复ABI/Scale编解码相关的bug
兼容性说明
- 不兼容 FISCO BCOS 2.0+ 版本
- 兼容java-sdk v3.x的历史版本,升级到rc3的sdk,业务代码需要适配
- 支持3.0.0-rc3版本和3.0.0-rc2版本的FISCO BCOS区块链
- 不支持3.0.0-rc1版本的FISCO BCOS区块链
Please read documentation of Java SDK v3.x.
- English User Handbook:Working in progress...
- Chinese User Handbook
Added
- Support Solidity contract parallel conflict field analyze
- support getABI interface
Changed
- Call the interface of
bcos-c-sdk
to implement transaction encoding and decoding functions - Call the interface of
bcos-c-sdk
to implement the cryptographic algorithm - Upgrade
bcos-sdk-jni
to3.0.0-rc3
org.fisco.bcos.sdk
package path is modified toorg.fisco.bcos.sdk.v3
- sdk-abi code refactor
- use BFS link to replace CNS
Fixed
- Fix exception caused by AMOP
getTopics
returning null - Fix #issue 510 to solve the problem that
libbcos-sdk-jni.dll
dynamic library cannot be found in windows environment - Fix bugs related to ABI/Scale codec
Compatibility Notes
- Not compatible with FISCO BCOS version 2.0+
- Incompatible with the historical version of java-sdk v3.x
- Support 3.0.0-rc3 version and [3.0.0-rc2](https://github .com/FISCO-BCOS/FISCO-BCOS/releases/tag/v3.0.0-rc2) FISCO BCOS
- 3.0.0-rc1 FISCO BCOS blockchain is not supported
Java SDK v3.0.0-rc2
(2022-02-25)
请阅读Java SDK v3.x文档:
更新
- 升级
bcos-sdk-jni
到3.0.0-rc2
- 修改SDK的默认群组为
group0
- 交易由
Base64
编码修改为十六进制编码 - 对齐WBC-Liquid,修改
bytesN
类型数据的Scale编码
修复
- 修复Scale编码 struct数组编码丢失泛型类型数据的问题
兼容性说明
Please read documentation of Java SDK v3.x.
- English User Handbook:Working in progress...
- Chinese User Handbook
Changed
- Upgrade
bcos-sdk-jni
to3.0.0-rc2
- Modify the default group of the SDK to
group0
- Transaction modified from
Base64
encoding to hexadecimal encoding - Align with WBC-Liquid, modify the Scale encoding of
bytesN
Fixed
- Fix the problem that Scale encoding struct array loses generic type data
Compatibility Notes
Java SDK v3.0.0-rc1
(2021-12-10)
请阅读Java SDK文档:
新特性
Java SDK包含如下几个新特性:
- 完全支持 FISCO BCOS 3.0+,不兼容 FISCO BCOS 2.0+ 版本。FISCO BCOS 2.0+ 版本请使用对应版本的Java SDK。
- 支持Liquid合约使用,包含部署Liquid合约,发起Liquid合约交易。
- 支持Scale的编解码解析。
- 使用JNI封装后的FISCO BCOS C SDK接口与区块链交互。
功能
- 提供合约编译功能,将Solidity合约文件转换成Java合约文件。
- 支持Liquid合约使用,包含部署Liquid合约,发起Liquid合约交易。
- 提供Java SDK API,提供访问FISCO BCOS JSON-RPC 的功能,并支持预编译(Precompiled)合约调用。
- 提供自定义构造和发送交易功能。
- 提供AMOP功能。
- 支持合约事件推送。
- 支持ABI和Scale的编解码解析。
- 提供账户管理接口。
- 提供权限管理接口。
Please read documentation of Java SDK.
- English User Handbook:Working in progress...
- Chinese User Handbook
New Features
Java SDK includes the following new features:
- Support FISCO BCOS 3.0+. No longer support for FISCO BCOS 2.0+, if you want to use Java SDK to connect FISCO BCOS 2.0+, please use Java SDK in 2.0+ versions.
- Support Liquid usage, including deploy contracts, sending transactions.
- Support Scale encoding and decoding data.
- Use JNI wrapper of FISCO BCOS C SDK interface, which connecting blockchain nodes.
Functions
- Solidity contract compiling.
- Liquid contract support, including deploy contracts, sending transactions.
- Interacting with FISCO BCOS JSON-RPC interface.
- Constructing and sending transactions.
- Advanced Messages Onchain Protocol(AMOP) functions.
- Contract event subscription.
- Encoding and decoding data with ABI and Scale.
- Account Management.
- Authority Management.
Java SDK v2.8.0
(2021-08-25)
Please read documentation of Java SDK.
Added:
- Using Hardware Secure Module(HSM) to make cryptography operations.
- Support use PCI crypto card or crypto machine to make SM2 SM3 calculation.
- Support use HSM internal key to sign transaction.
Update:
- Update crypto dependency version of sdk-crypto module.
- Support to read the certificate from the jar package.
- The interface that sent the transaction returns the transaction hash.
- Add VRF random number generation and random number verification interface.
添加:
- 新增支持使用硬件加密模块进行密码计算。
- 支持使用符合国密《GMT0018-2012密码设备应用接口规范》标准的PCI加密卡/加密机进行SM2,SM3运算。
- 支持使用密码卡/密码机内部密钥进行交易签名。
更新:
- 更新sdk-crypto模块所使用的密码算法库版本。
- 支持从jar包中读取证书。
- 发送交易的接口返回交易哈希。
- 添加VRF随机数生成和随机数验证接口。
Java SDK v2.7.2
(2021-03-24)
Please read documentation of Java SDK.
Added:
- Add an interface that supports remotely calling signature services to assemble and send transactions(
AssembleTransactionWithRemoteSignProcessor
,RemoteSignProviderInterface
)
Fixed:
- Fix the problem that the ContractLoader of the java sdk is loaded incorrectly in some scenarios, which causes the deployment and call of the contract to fail #264
- Fix the problem of errors when loading certificates and private keys from the classpath path in the windows environment #260
- Fix the problem that the FromBlock of EventLogParams does not take effect #253
- Fix the problem that the Java SDK can only read the private key generated by openssl with the -key name parameter added #249
Compatibility
- FISCO BCOS v2.0+
- AMOP Not compatible with Web3SDK
请参考文档:
添加:
- 增加支持远程调用签名服务来组装并发送交易的接口(
AssembleTransactionWithRemoteSignProcessor
,RemoteSignProviderInterface
)
修复:
- 修复某些场景下Java SDK的ContractLoader加载出错,导致部署和调用合约失败的问题 #264
- 修复windows环境下从classpath路径下加载证书和私钥出错的问题 #260
- 修复EventLogParams的FromBlock不生效的问题 #253
- 修复Java SDK只能读取openssl添加-key name参数的生成的私钥的问题 #249
适配性:
- 适配FISCO BCOS v2.0+
- AMOP功能不兼容Web3SDK
Java SDK v2.7.1
v2.7.1
(2020-12-24)
Please read documentation of Java SDK.
Added:
- Support JDK 15
- AMOP module supports hexadecimal public key and private key as parameters
- Support constructing
AssembleTransactionProcessor
through the contents ofbin
andabi
AssembleTransactionProcessor
supports the construction of signed transactions
Changed:
- Rename the jar package of Java SDK to
fisco-bcos-java-sdk
- Support loading certificates and account private keys from the
resources
path ABICodecJsonWrapper
supports the representation ofbytes
type parameters in Base64 and hexadecimal encoding, and distinguishes encoding types with prefixes ofbase64://
andhex://
Compatibility
- FISCO BCOS v2.0+
- AMOP Not compatible with Web3SDK
请参考文档:
添加:
- 支持JDK 15
- AMOP模块支持传入十六进制的公钥和私钥
- 支持通过
bin
和abi
的内容构造AssembleTransactionProcessor
AssembleTransactionProcessor
支持构造带有签名的交易
修改:
- Java SDK的jar包重命名为
fisco-bcos-java-sdk
- 支持从
resources
路径加载证书和账户私钥 ABICodecJsonWrapper
支持以Base64、十六进制编码形式表示bytes
类型参数,并以base64://
、hex://
前缀区分编码类型
适配性:
- 适配FISCO BCOS v2.0+
- AMOP功能不兼容Web3SDK