Skip to content
This repository was archived by the owner on Jul 23, 2024. It is now read-only.

Releases: klaytn/caver-java

Release v1.6.2

15 Jun 08:34
8b55936

Choose a tag to compare

v1.6.2 Release Notes

New Features

  • Added caver.utils.decodeSignature() method to decode the raw signature data from executing klay_sign RPC API. (#248)

Fixes

  • Fixed an issue that the sourceCompatibility and targetCompatibility options were not being applied properly. (#243)
  • Updated decrypting logic for keystore file. (#247)
  • Modified logic in the caver.utils.hashMessage() method. (#248)

Others

  • Added RPC field setter of Caver. (#246)

Release v1.6.1

07 Jun 02:27
cdf624f

Choose a tag to compare

v1.6.1 Release Notes

New Features

  • Supported wrapper classes to provide the same usability as caver-js SDK.

    • Created a wrapper class of Account Layer supported through caver.account.wrapper package.(#219)
      • Created and added an AccountWrapper class to Caver as account.
        • The caver.account.create creates an Account instance.
        • The caver.account.xxxx executes static methods in the Account class.
          • e.g. caver.account.createWithAccountKeyLegacy features the same as Account.createWithAccountKeyLegacy.
      • Created and added an AccountKeyWrapper class to AccountWrapper as accountKey.
        • The caver.account.accountKey.accountKeyXXX.create creates an AccountKeyXXX instance.
    • Created a wrapper class of Transaction Layer supported through caver.transaction.wrapper package.(#220)
      • Created and added a TransactionWrapper class to Caver as transaction.
        • The caver.transaction.[transactionType].create creates a transaction instance with the corresponding transactionType.
          • e.g. caver.transaction.valueTransfer.create creates a TxTypeValueTransfer transaction instance.
        • The caver.transacgtion.[transactionType].xxxx executes a static method in the TransactionType class.
          • e.g caver.transaction.valueTransfer.decode features the same as ValueTransfer.decode().
    • Created a wrapper class of Contract Layer supported through caver.contract.wrapper package.(#221)
      • Created and added a ContractWrapper class to Caver as contract.
        • The caver.contract.create creates a Contract instance.
    • Created a wrapper class of ABI Layer supported through caver.abi.wrapper package.(#222)
      • Created and added an ABIWrapper class to Caver as abi.
        • The caver.abi.xxx executes a static method in the ABI class.
          • e.g. caver.abi.encodeABI features the same as ABI.encodeABI.
    • Created a wrapper class of KCT Layer supported through caver.kct.wrapper package.(#223)
      • Created and added a KCTWrapper class to Caver as kct.
      • Created and added a KIP7Wrapper class to KCTWrapper as kip7.
        • The caver.kct.kip7.create creates a KIP7 instance.
        • The caver.kct.kip7.xxxx executes a static method in the KIP7 class.
          • e.g. caver.kct.kip7.deploy()
      • Created and added a KIP17Wrapper class to KCTWrapper as kip17.
        • The caver.kct.kip17.create creates a KIP17 instance.
        • The caver.kct.kip17.xxxx executes a static method in the KIP17 class.
          • e.g. caver.kct.kip17.deploy()
      • Created and added a KIP37Wrapper class to KCTWrapper as kip37.
        • The caver.kct.kip37.create creates a KIP37 instance.
        • The caver.kct.kip37.xxxx executes a static method in the KIP37 class.
          • e.g. caver.kct.kip37.deploy()
    • Created a wrapper class of Utils Layer supported through caver.utils.wrapper package.(#224)
      • Created and added a UtilsWrapper class to Caver as utils.
        • The caver.utils.xxxx executes a static method in the Utils class.
          • e.g. caver.utils.isAddress()
    • Created a wrapper class of IPFS Layer supported through caver.ipfs.wrapper package.(#224)
      • Created and added an IPFSWrapper class to Caver as ipfs.
        • The caver.ipfs.xxxx executes a static method in the IPFS class.
          • e.g. caver.ipfs.fromHex()
  • Supported fee-delegation feature with caver.contract.(#233)

    • To support fee-delegation, add the additional fields related to fee-delegation defined in the SendOptions class.
      • Defined a feeDelegation field to use a fee-delegation transaction.
        • If false, it creates a basic transaction (SmartContractDeploy, SmartContractExecution).
      • Defined a feePayer field to use a fee payer address.
      • Defined a feeRatio field to use a fee ratio.
      • If you want to set and use a SendOptions instance, a fee-delegation value as a default with a Contract instance, you can define the SendOptions instance by configuring fee-delegation-related field and set it in caver.contracts.setDefaultsOptions.
    • You can define additional fields in the SendOptions instance to use fee-delegation feature when deploying a smart contract via Contract class.
      • You can use contract.deploy method like contract.deploy(sendOptions, byteCode, argument...)
      • You can use contract.send method like contract.send(sendOptions, "constructor", byteCode, argument...)
    • You can define additional fields in the SendOptions instance to use fee-delegation feature when executing a smart contract via Contract class.
      • You can use contract.send method like contract.send(snedOptions, "function name", argumet...)
      • You can use contract.getMethod("method name").send method like contract.method("function name").send(Arrays.asList(argumet...), sendOptions)
    • You can define additional fields in sendOptions instance to use fee-delegation when signing a TxTypeFeeDelegatedSmartContractDeploy or TxTypeFeeDelegatedSmartContractDeployWithRatio as a sender.
      • You can create and sign a transaction like contract.sign(sendOptions, "constructor", byteCode, argument...)
      • If you want to create a TxTypeFeeDelegatedSmartContractDeploy and sign it, you should define a feeDelegation, feePayer field in SendOptions.
      • If you want to create a TxTypeFeeDelegatedSmartContractDeployWithRatio and sign it, you should define a feeDelegation, feePayer field in SendOptions.
    • You can define additional fields in sendOptions to use fee-delegation when signing a TxTypeFeeDelegatedSmartContractExecution or TxTypeFeeDelegatedSmartContractExecutionWithRatio as a sender.
      • You can create and sign a transaction like contract.sign(sendOptions, "function name", byteCode, argument...)
      • You can create and sign a transaction as a feePayer like contract.signAssFeePayer(sendOptions, "function name", byteCode, argument...)
      • If you want to create a TxTypeFeeDelegatedSmartContractDeploy and sign it, you should define a feeDelegation, feePayer field in SendOptions.
      • If you want to create a TxTypeFeeDelegatedSmartContractDeployWithRatio and sign it, you should define a feeDelegation, feePayer field in SendOptions.
  • Supported fee-delegation feature with caver.kct.(#238)

    • You can pass sendOptions to deploy function to define additional fields to use fee-delegation when deploying a KCT via caver.kct.
      • You can pass sendOptions instead of deployerAddress with caver.kct.kip7 like caver.kct.kip7.deploy(sendOptions, name, symbol, decimals, initialSupply).
      • You can pass sendOptions instead of deployerAddress with caver.kct.kip17 like caver.kct.kip17.deploy(sendOptions, name, symbol).
      • You can pass sendOptions instead of deployerAddress with caver.kct.ki37 like caver.kct.kip37.deploy(sendOptions, uri).
    • You can use the sign function to sign a transaction related to deployment as a sender, and define additional fields to use fee-delegation.
      • You can use kip7.sign to sign a transaction like kip7.sign(sendOptions, "constructor", KIP7ConstantData.BINARY, arguments…).
      • You can use kip17.sign to sign a transaction like kip17.sign(sendOptions, "constructor", KIP17ConstantData.BINARY, arguments…).
      • You can use kip37.sign to sign a transaction like kip37.sign(sendOptions, "constructor", KIP37ConstantData.BINARY, arguments…).
    • You can use the signAsFeePayer function to sign a transaction related to deployment as a fee payer, and define additional fields to use fee-delegation.
      • You can use kip7.signAsFeePayer to sign a transaction as a fee payer like kip7.signAsFeePayer(sendOptions, "constructor", KIP7ConstantData.BINARY, arguments…).
      • You can use kip17.signAsFeePayer to sign a transaction as a fee payer like kip17.signAsFeePayer(sendOptions, "constructor", KIP17ConstantData.BINARY, arguments…).
      • You can use kip37.signAsFeePayer to sign a transaction as a fee payer like kip37.signAsFeePayer(sendOptions, "constructor", KIP37ConstantData.BINARY, arguments…).
    • You can use the sign function to sign a transaction related to executing smart contract functions as a sender, and define additional fields to use fee-delegation.
      • You can use kip7.sign to sign a transaction like kip7.sign(sendOptions, "function name", arguments…).
      • You can use kip17.sign to sign a transaction like kip17.sign(sendOptions, "function name", arguments…).
      • You can use kip37.sign to sign a transaction like kip37.sign(sendOptions, "function name", arguments…).
    • You can use the signAsFeePayer function to sign a transaction related to executing smart contract functions as a fee payer, and define additional fields to use fee-delegation.
      • You can use kip7.signAsFeePayer to sign a transaction as a fee payer like kip7.signAsFeePayer(sendOptions, "function name", arguments…).
      • You can use kip17.signAsFeePayer to sign a transaction as a fee payer like kip17.signAsFeePayer(sendOptions, "function name", arguments…).
      • You can use kip37.signAsFeePayer to sign a transaction as a fee payer like kip37.signAsFeePayer(sendOptions, "function name", arguments…).

Fixed

  • Fixed "Duplicated Account" problem caused by KeyringContainer.remove()(#227)
  • Modified to return...
Read more

Release v1.6.1-rc.3

04 Jun 00:48
4ca1462

Choose a tag to compare

Release v1.6.1-rc.3 Pre-release
Pre-release

v1.6.1-rc.3 Release Notes

New Features

  • Supported wrapper classes to provide the same usability as caver-js SDK.

    • Created a wrapper class of Account Layer supported through caver.account.wrapper package.(#219)
      • Created and added an AccountWrapper class to Caver as account.
        • The caver.account.create creates an Account instance.
        • The caver.account.xxxx executes static methods in the Account class.
          • e.g. caver.account.createWithAccountKeyLegacy features the same as Account.createWithAccountKeyLegacy.
      • Created and added an AccountKeyWrapper class to AccountWrapper as accountKey.
        • The caver.account.accountKey.accountKeyXXX.create creates an AccountKeyXXX instance.
    • Created a wrapper class of Transaction Layer supported through caver.transaction.wrapper package.(#220)
      • Created and added a TransactionWrapper class to Caver as transaction.
        • The caver.transaction.[transactionType].create creates a transaction instance with the corresponding transactionType.
          • e.g. caver.transaction.valueTransfer.create creates a TxTypeValueTransfer transaction instance.
        • The caver.transacgtion.[transactionType].xxxx executes a static method in the TransactionType class.
          • e.g caver.transaction.valueTransfer.decode features the same as ValueTransfer.decode().
    • Created a wrapper class of Contract Layer supported through caver.contract.wrapper package.(#221)
      • Created and added a ContractWrapper class to Caver as contract.
        • The caver.contract.create creates a Contract instance.
    • Created a wrapper class of ABI Layer supported through caver.abi.wrapper package.(#222)
      • Created and added an ABIWrapper class to Caver as abi.
        • The caver.abi.xxx executes a static method in the ABI class.
          • e.g. caver.abi.encodeABI features the same as ABI.encodeABI.
    • Created a wrapper class of KCT Layer supported through caver.kct.wrapper package.(#223)
      • Created and added a KCTWrapper class to Caver as kct.
      • Created and added a KIP7Wrapper class to KCTWrapper as kip7.
        • The caver.kct.kip7.create creates a KIP7 instance.
        • The caver.kct.kip7.xxxx executes a static method in the KIP7 class.
          • e.g. caver.kct.kip7.deploy()
      • Created and added a KIP17Wrapper class to KCTWrapper as kip17.
        • The caver.kct.kip17.create creates a KIP17 instance.
        • The caver.kct.kip17.xxxx executes a static method in the KIP17 class.
          • e.g. caver.kct.kip17.deploy()
      • Created and added a KIP37Wrapper class to KCTWrapper as kip37.
        • The caver.kct.kip37.create creates a KIP37 instance.
        • The caver.kct.kip37.xxxx executes a static method in the KIP37 class.
          • e.g. caver.kct.kip37.deploy()
    • Created a wrapper class of Utils Layer supported through caver.utils.wrapper package.(#224)
      • Created and added a UtilsWrapper class to Caver as utils.
        • The caver.utils.xxxx executes a static method in the Utils class.
          • e.g. caver.utils.isAddress()
    • Created a wrapper class of IPFS Layer supported through caver.ipfs.wrapper package.(#224)
      • Created and added an IPFSWrapper class to Caver as ipfs.
        • The caver.ipfs.xxxx executes a static method in the IPFS class.
          • e.g. caver.ipfs.fromHex()
  • Supported fee-delegation feature with caver.contract.(#233)

    • To support fee-delegation, add the additional fields related to fee-delegation defined in the SendOptions class.
      • Defined a feeDelegation field to use a fee-delegation transaction.
        • If false, it creates a basic transaction (SmartContractDeploy, SmartContractExecution).
      • Defined a feePayer field to use a fee payer address.
      • Defined a feeRatio field to use a fee ratio.
      • If you want to set and use a SendOptions instance, a fee-delegation value as a default with a Contract instance, you can define the SendOptions instance by configuring fee-delegation-related field and set it in caver.contracts.setDefaultsOptions.
    • You can define additional fields in the SendOptions instance to use fee-delegation feature when deploying a smart contract via Contract class.
      • You can use contract.deploy method like contract.deploy(sendOptions, byteCode, argument...)
      • You can use contract.send method like contract.send(sendOptions, "constructor", byteCode, argument...)
    • You can define additional fields in the SendOptions instance to use fee-delegation feature when executing a smart contract via Contract class.
      • You can use contract.send method like contract.send(snedOptions, "function name", argumet...)
      • You can use contract.getMethod("method name").send method like contract.method("function name").send(Arrays.asList(argumet...), sendOptions)
    • You can define additional fields in sendOptions instance to use fee-delegation when signing a TxTypeFeeDelegatedSmartContractDeploy or TxTypeFeeDelegatedSmartContractDeployWithRatio as a sender.
      • You can create and sign a transaction like contract.sign(sendOptions, "constructor", byteCode, argument...)
      • If you want to create a TxTypeFeeDelegatedSmartContractDeploy and sign it, you should define a feeDelegation, feePayer field in SendOptions.
      • If you want to create a TxTypeFeeDelegatedSmartContractDeployWithRatio and sign it, you should define a feeDelegation, feePayer field in SendOptions.
    • You can define additional fields in sendOptions to use fee-delegation when signing a TxTypeFeeDelegatedSmartContractExecution or TxTypeFeeDelegatedSmartContractExecutionWithRatio as a sender.
      • You can create and sign a transaction like contract.sign(sendOptions, "function name", byteCode, argument...)
      • You can create and sign a transaction as a feePayer like contract.signAssFeePayer(sendOptions, "function name", byteCode, argument...)
      • If you want to create a TxTypeFeeDelegatedSmartContractDeploy and sign it, you should define a feeDelegation, feePayer field in SendOptions.
      • If you want to create a TxTypeFeeDelegatedSmartContractDeployWithRatio and sign it, you should define a feeDelegation, feePayer field in SendOptions.
  • Supported fee-delegation feature with caver.kct.(#238)

    • You can pass sendOptions to deploy function to define additional fields to use fee-delegation when deploying a KCT via caver.kct.
      • You can pass sendOptions instead of deployerAddress with caver.kct.kip7 like caver.kct.kip7.deploy(sendOptions, name, symbol, decimals, initialSupply).
      • You can pass sendOptions instead of deployerAddress with caver.kct.kip17 like caver.kct.kip17.deploy(sendOptions, name, symbol).
      • You can pass sendOptions instead of deployerAddress with caver.kct.ki37 like caver.kct.kip37.deploy(sendOptions, uri).
    • You can use the sign function to sign a transaction related to deployment as a sender, and define additional fields to use fee-delegation.
      • You can use kip7.sign to sign a transaction like kip7.sign(sendOptions, "constructor", KIP7ConstantData.BINARY, arguments…).
      • You can use kip17.sign to sign a transaction like kip17.sign(sendOptions, "constructor", KIP17ConstantData.BINARY, arguments…).
      • You can use kip37.sign to sign a transaction like kip37.sign(sendOptions, "constructor", KIP37ConstantData.BINARY, arguments…).
    • You can use the signAsFeePayer function to sign a transaction related to deployment as a fee payer, and define additional fields to use fee-delegation.
      • You can use kip7.signAsFeePayer to sign a transaction as a fee payer like kip7.signAsFeePayer(sendOptions, "constructor", KIP7ConstantData.BINARY, arguments…).
      • You can use kip17.signAsFeePayer to sign a transaction as a fee payer like kip17.signAsFeePayer(sendOptions, "constructor", KIP17ConstantData.BINARY, arguments…).
      • You can use kip37.signAsFeePayer to sign a transaction as a fee payer like kip37.signAsFeePayer(sendOptions, "constructor", KIP37ConstantData.BINARY, arguments…).
    • You can use the sign function to sign a transaction related to executing smart contract functions as a sender, and define additional fields to use fee-delegation.
      • You can use kip7.sign to sign a transaction like kip7.sign(sendOptions, "function name", arguments…).
      • You can use kip17.sign to sign a transaction like kip17.sign(sendOptions, "function name", arguments…).
      • You can use kip37.sign to sign a transaction like kip37.sign(sendOptions, "function name", arguments…).
    • You can use the signAsFeePayer function to sign a transaction related to executing smart contract functions as a fee payer, and define additional fields to use fee-delegation.
      • You can use kip7.signAsFeePayer to sign a transaction as a fee payer like kip7.signAsFeePayer(sendOptions, "function name", arguments…).
      • You can use kip17.signAsFeePayer to sign a transaction as a fee payer like kip17.signAsFeePayer(sendOptions, "function name", arguments…).
      • You can use kip37.signAsFeePayer to sign a transaction as a fee payer like kip37.signAsFeePayer(sendOptions, "function name", arguments…).

Fixed

  • Fixed "Duplicated Account" problem caused by KeyringContainer.remove()(#227)
  • Modified to r...
Read more

Release v1.6.1-rc.2

04 Jun 00:50

Choose a tag to compare

Release v1.6.1-rc.2 Pre-release
Pre-release

v1.6.1-rc.2 Release Notes

New Features

  • Supported wrapper classes to provide the same usability as caver-js SDK.

    • Created a wrapper class of Account Layer supported through caver.account.wrapper package.(#219)
      • Created and added an AccountWrapper class to Caver as account.
        • The caver.account.create creates an Account instance.
        • The caver.account.xxxx executes static methods in the Account class.
          • e.g. caver.account.createWithAccountKeyLegacy features the same as Account.createWithAccountKeyLegacy.
      • Created and added an AccountKeyWrapper class to AccountWrapper as accountKey.
        • The caver.account.accountKey.accountKeyXXX.create creates an AccountKeyXXX instance.
    • Created a wrapper class of Transaction Layer supported through caver.transaction.wrapper package.(#220)
      • Created and added a TransactionWrapper class to Caver as transaction.
        • The caver.transaction.[transactionType].create creates a transaction instance with the corresponding transactionType.
          • e.g. caver.transaction.valueTransfer.create creates a TxTypeValueTransfer transaction instance.
        • The caver.transacgtion.[transactionType].xxxx executes a static method in the TransactionType class.
          • e.g caver.transaction.valueTransfer.decode features the same as ValueTransfer.decode().
    • Created a wrapper class of Contract Layer supported through caver.contract.wrapper package.(#221)
      • Created and added a ContractWrapper class to Caver as contract.
        • The caver.contract.create creates a Contract instance.
    • Created a wrapper class of ABI Layer supported through caver.abi.wrapper package.(#222)
      • Created and added an ABIWrapper class to Caver as abi.
        • The caver.abi.xxx executes a static method in the ABI class.
          • e.g. caver.abi.encodeABI features the same as ABI.encodeABI.
    • Created a wrapper class of KCT Layer supported through caver.kct.wrapper package.(#223)
      • Created and added a KCTWrapper class to Caver as kct.
      • Created and added a KIP7Wrapper class to KCTWrapper as kip7.
        • The caver.kct.kip7.create creates a KIP7 instance.
        • The caver.kct.kip7.xxxx executes a static method in the KIP7 class.
          • e.g. caver.kct.kip7.deploy()
      • Created and added a KIP17Wrapper class to KCTWrapper as kip17.
        • The caver.kct.kip17.create creates a KIP17 instance.
        • The caver.kct.kip17.xxxx executes a static method in the KIP17 class.
          • e.g. caver.kct.kip17.deploy()
      • Created and added a KIP37Wrapper class to KCTWrapper as kip37.
        • The caver.kct.kip37.create creates a KIP37 instance.
        • The caver.kct.kip37.xxxx executes a static method in the KIP37 class.
          • e.g. caver.kct.kip37.deploy()
    • Created a wrapper class of Utils Layer supported through caver.utils.wrapper package.(#224)
      • Created and added a UtilsWrapper class to Caver as utils.
        • The caver.utils.xxxx executes a static method in the Utils class.
          • e.g. caver.utils.isAddress()
    • Created a wrapper class of IPFS Layer supported through caver.ipfs.wrapper package.(#224)
      • Created and added an IPFSWrapper class to Caver as ipfs.
        • The caver.ipfs.xxxx executes a static method in the IPFS class.
          • e.g. caver.ipfs.fromHex()
  • Supported fee-delegation feature with caver.contract.(#233)

    • To support fee-delegation, add the additional fields related to fee-delegation defined in the SendOptions class.
      • Defined a feeDelegation field to use a fee-delegation transaction.
        • If false, it creates a basic transaction (SmartContractDeploy, SmartContractExecution).
      • Defined a feePayer field to use a fee payer address.
      • Defined a feeRatio field to use a fee ratio.
      • If you want to set and use a SendOptions instance, a fee-delegation value as a default with a Contract instance, you can define the SendOptions instance by configuring fee-delegation-related field and set it in caver.contracts.setDefaultsOptions.
    • You can define additional fields in the SendOptions instance to use fee-delegation feature when deploying a smart contract via Contract class.
      • You can use contract.deploy method like contract.deploy(sendOptions, byteCode, argument...)
      • You can use contract.send method like contract.send(sendOptions, "constructor", byteCode, argument...)
    • You can define additional fields in the SendOptions instance to use fee-delegation feature when executing a smart contract via Contract class.
      • You can use contract.send method like contract.send(snedOptions, "function name", argumet...)
      • You can use contract.getMethod("method name").send method like contract.method("function name").send(Arrays.asList(argumet...), sendOptions)
    • You can define additional fields in sendOptions instance to use fee-delegation when signing a TxTypeFeeDelegatedSmartContractDeploy or TxTypeFeeDelegatedSmartContractDeployWithRatio as a sender.
      • You can create and sign a transaction like contract.sign(sendOptions, "constructor", byteCode, argument...)
      • If you want to create a TxTypeFeeDelegatedSmartContractDeploy and sign it, you should define a feeDelegation, feePayer field in SendOptions.
      • If you want to create a TxTypeFeeDelegatedSmartContractDeployWithRatio and sign it, you should define a feeDelegation, feePayer field in SendOptions.
    • You can define additional fields in sendOptions to use fee-delegation when signing a TxTypeFeeDelegatedSmartContractExecution or TxTypeFeeDelegatedSmartContractExecutionWithRatio as a sender.
      • You can create and sign a transaction like contract.sign(sendOptions, "function name", byteCode, argument...)
      • You can create and sign a transaction as a feePayer like contract.signAssFeePayer(sendOptions, "function name", byteCode, argument...)
      • If you want to create a TxTypeFeeDelegatedSmartContractDeploy and sign it, you should define a feeDelegation, feePayer field in SendOptions.
      • If you want to create a TxTypeFeeDelegatedSmartContractDeployWithRatio and sign it, you should define a feeDelegation, feePayer field in SendOptions.
  • Supported fee-delegation feature with caver.kct.(#238)

    • You can pass sendOptions to deploy function to define additional fields to use fee-delegation when deploying a KCT via caver.kct.
      • You can pass sendOptions instead of deployerAddress with caver.kct.kip7 like caver.kct.kip7.deploy(sendOptions, name, symbol, decimals, initialSupply).
      • You can pass sendOptions instead of deployerAddress with caver.kct.kip17 like caver.kct.kip17.deploy(sendOptions, name, symbol).
      • You can pass sendOptions instead of deployerAddress with caver.kct.ki37 like caver.kct.kip37.deploy(sendOptions, uri).
    • You can use the sign function to sign a transaction related to deployment as a sender, and define additional fields to use fee-delegation.
      • You can use kip7.sign to sign a transaction like kip7.sign(sendOptions, "constructor", KIP7ConstantData.BINARY, arguments…).
      • You can use kip17.sign to sign a transaction like kip17.sign(sendOptions, "constructor", KIP17ConstantData.BINARY, arguments…).
      • You can use kip37.sign to sign a transaction like kip37.sign(sendOptions, "constructor", KIP37ConstantData.BINARY, arguments…).
    • You can use the signAsFeePayer function to sign a transaction related to deployment as a fee payer, and define additional fields to use fee-delegation.
      • You can use kip7.signAsFeePayer to sign a transaction as a fee payer like kip7.signAsFeePayer(sendOptions, "constructor", KIP7ConstantData.BINARY, arguments…).
      • You can use kip17.signAsFeePayer to sign a transaction as a fee payer like kip17.signAsFeePayer(sendOptions, "constructor", KIP17ConstantData.BINARY, arguments…).
      • You can use kip37.signAsFeePayer to sign a transaction as a fee payer like kip37.signAsFeePayer(sendOptions, "constructor", KIP37ConstantData.BINARY, arguments…).
    • You can use the sign function to sign a transaction related to executing smart contract functions as a sender, and define additional fields to use fee-delegation.
      • You can use kip7.sign to sign a transaction like kip7.sign(sendOptions, "function name", arguments…).
      • You can use kip17.sign to sign a transaction like kip17.sign(sendOptions, "function name", arguments…).
      • You can use kip37.sign to sign a transaction like kip37.sign(sendOptions, "function name", arguments…).
    • You can use the signAsFeePayer function to sign a transaction related to executing smart contract functions as a fee payer, and define additional fields to use fee-delegation.
      • You can use kip7.signAsFeePayer to sign a transaction as a fee payer like kip7.signAsFeePayer(sendOptions, "function name", arguments…).
      • You can use kip17.signAsFeePayer to sign a transaction as a fee payer like kip17.signAsFeePayer(sendOptions, "function name", arguments…).
      • You can use kip37.signAsFeePayer to sign a transaction as a fee payer like kip37.signAsFeePayer(sendOptions, "function name", arguments…).

Fixed

  • Fixed "Duplicated Account" problem caused by KeyringContainer.remove()(#227)
  • Modified to r...
Read more

v1.6.1-rc.1: Merge pull request #235 from sirano11/maven

20 May 06:21
231bfe1

Choose a tag to compare

[CI] add a Nexus credential

Release v1.6.0

23 Apr 07:06
19aef6b

Choose a tag to compare

v1.6.0 Release Notes

New Features

  • caver.abi supports tuple type.
    • You can encode and decode tuple-type parameters using the functions below.
      • caver.abi.encodeParameter
      • caver.abi.encodeParameters
      • caver.abi.decodeParameter
      • caver.abi.decodeParameters
    • For more information on tuple types, please refer to Solidity document.

Improvements

  • Supported decoding of multidimensional arrays.(#214)

Fixed

  • Fixed a logic to encode arrays of dynamic types defined by ABI specification.(#212, #216)
    • Made fixes for T[] for any type T
    • Made fixes for T[k] for any dynamic T and any k >= 0
  • Fixed a logic to decode arrays of dynamic types defined by ABI specification.(#214, #216)
    • Made fixes for T[] for any type T
    • Made fixes for T[k] for any dynamic T and any k >= 0
  • Added a left padding to WeightedPublicKey when creating a public key string from x, y points.(#209)

Release v1.5.7

24 Feb 01:26
fba5d41

Choose a tag to compare

v1.5.7 Release Notes

New Features

  • KIP37 class in caver.kct.kip37 package
    • Introduced KIP37 class to interact with a KIP-37 multi token contract.
    • Provided the following methods that conform to the KIP-37 multi token.
      • KIP37.deploy
      • clone
      • supportInterface
      • uri
      • totalSupply
      • balanceOf
      • balanceOfBatch
      • isApprovedForAll
      • paused
      • isPauser
      • isMinter
      • create
      • setApprovalForAll
      • safeTransferFrom
      • safeBatchTransferFrom
      • mint
      • mintBatch
      • addMinter
      • renounceMinter
      • burn
      • burnBatch
      • pause
      • unpause
      • addPauser
      • renouncePauser
    • For more details on the methods provided KIP37 class, please refer to API Reference.
  • detectInterface
    • Provided a method to detect what interface the token contract distributed to Klaytn implements.
    • It is provided by detectInterface method in the KIP7, KIP17, and KIP37 class.
      • KIP7 class
        • KIP7.detectInterface
        • detectInterface
      • KIP17 class
        • KIP17.detectInterface
        • detectInterface
      • KIP37 class
        • KIP37.detectInterface
        • detectInterface

Improvements

  • Added logic to handle ‘legacy’ and ‘fail’ string in fromRoleBasedPublicKeysAndOptions method in AccountKeyRoleBased class to create and save an instance of AccountKeyLegacy and that of AccountKeyFail easily. (#201)
  • Added an optional parameter compressed in getPublicKey function. (#202)

Release v1.5.6

01 Feb 04:31
3894723

Choose a tag to compare

v1.5.6 Release Notes

Breaking Changes

  • Removed Public EN URL.(#182)

New features

  • Introduction of IWallet interface to support various wallet types of Caver(#181, #185, #187, #189, #193)
    • IWallet interface defines a method for signing a transaction.
    • Sign using the IWallet interface in the KIP7, KIP17, and Contract classes that internally sign transactions.
    • Extending/replacing the sign function as needed now easier with the implementation of the IWallet interface.
      • KeyringContainer class corresponding to caver.wallet implements IWallet interface.
      • KASWallet class in caver-java-ext-kas implements IWallet interface.

Improvements

  • Added a constructor with only the from field in SendOptions class.(#194)
    • It should only be used when executing KIP7 / KIP7 class methods. Because if the gas parameter passed to the method is null, the KIP7 / KIP7 class method automatically estimates the gas.

Fixed

  • Changed the default value of address.(#190)
    • The default value of address changed from 0x to 0x0000000000000000000000000000000000000000 in 20 bytes. Since Klaytn's address has a fixed length of 20 bytes, it cannot have 0x as a default.
  • When sending a transaction internally in the contract class, catch errors that occur during the execution of the sendRawTransaction API.(#191)

Others

  • Added more waiting time for CircleCI to prepare for network build and test for caver-java.(#192)

Release v1.5.6-rc.6

17 Dec 00:56

Choose a tag to compare

Release v1.5.6-rc.6 Pre-release
Pre-release

v1.5.6-rc.6 Release Notes(#194)

Breaking Changes

  • Remove Public EN url.(#182)
  • changes the default value of the address(#190)
    changes the default value of the address from 0x to 0x0000000000000000000000000000000000000000 in 20 bytes. Since Klaytn's address has a fixed length of 20 bytes, it cannot have 0x as a default.

New features

  • Introduced a IWallet interface(#185)
    • IWallet interface defines a method for signing a transaction.
    • KeyringContainer class corresponding to caver.wallet implements this interface.
    • sign using the IWallet interface in the KIP7, KIP17, and Contract classes that sign the transaction internally.

Improvement

  • add encodeABI, estimateGas in Contract class(#180)
  • Define throw exception class in IWallet interface's method.(#187)
    • generate()
    • isExisted()
  • Clarify the exception class thrown by the method in IWallet interface(#189)
  • Clarify throws exception in KIP7 / KIP17(#193)
  • add a constructor with only from in SendOptions class(#194)
    • It should only be used when executing KIP7 / KIP7 class methods. Because if gas passed to the method is null, the KIP7 / KIP7 class method automatically estimates gas.

Others

  • Add more time waiting for Circle CI to prepare to build test network for testing caver-java.(#192)

Release v1.5.6-rc.5

17 Dec 00:51
3f28f8d

Choose a tag to compare

Release v1.5.6-rc.5 Pre-release
Pre-release

v1.5.6-rc.5 Release Notes(#193)

Breaking Changes

  • Remove Public EN url.(#182)
  • changes the default value of the address(#190)
    changes the default value of the address from 0x to 0x0000000000000000000000000000000000000000 in 20 bytes. Since Klaytn's address has a fixed length of 20 bytes, it cannot have 0x as a default.

New features

  • Introduced a IWallet interface(#181, #185)
    • IWallet interface defines a method for signing a transaction.
    • KeyringContainer class corresponding to caver.wallet implements this interface.
    • sign using the IWallet interface in the KIP7, KIP17, and Contract classes that sign the transaction internally.

Improvement

  • add encodeABI, estimateGas in Contract class(#180)
  • Define throw exception class in IWallet interface's method.(#187)
    • generate()
    • isExisted()
  • Clarify the exception class thrown by the method in IWallet interface(#189)
  • Clarify throws exception in KIP7 / KIP17(#193)

Others

  • Add more time waiting for Circle CI to prepare to build test network for testing caver-java.(#192)