Releases: klaytn/klaytn
Klaytn v1.12.1 Release Notice
IMPORTANT: Klaytn v1.12.1 contains a hardfork upgrade that results in changes that are not backward compatible. All Cypress nodes must be upgraded to v1.12.0 or later before the target block number.
This version includes two distinct hardforks. The first is equivalent to the features of the Ethereum Cancun hardfork, and the second is an optional hardfork implementing Randao on-chain randomness. Refer to the v1.12.0 Release Notice for details.
Here's the hardfork schedule for the Cypress mainnet:
- Block number: 147534000 (estimated time: 04 Mar, 10:00 AM UTC+9)
- Hardfork contents: Cancun hardfork, Randao hardfork
Notes
Public EN operators can enable the rpc.gascap
configuration to reduce loads from heavy RPC calls. It is recommended to add the --rpc.gascap 300000000
(300mil gas) flag, but you should choose an appropriate value based on your node’s capacity.
The illegal instruction (SIGILL) error that occurred in v1.12.0 was resolved in v1.12.1. Even if some Intel CPU models do not support certain instructions, the linux-amd64 binary will function. On ARM Macs, the darwin-amd64 binary will work.
Improvements
- Added the klay_getProof and klay_getProof APIs (#2068)
- Enhanced information retrieved from the klay_getBlockWithConsensusInfo API and the ‘ken util decode-extra’ command (#2088, #2101)
- Modified the output values from the default tracer in debug trace APIs, (#2090)
- Dynamically enabled optimization instructions depending on CPU type to prevent the illegal instruction (SIGILL) error (#2091)
Fixes
- Exposed debug APIs via IPC even if disabled via RPC (#2075)
- Removed the computation cost cap from the call, estimateGas, and estimateComputationCost APIs (#2086)
- Fixed the slow node startup issue (#2064, #2074)
- Fixed the slow node termination and debug_setHead API issue (#2100)
- Fixed the block sync problem related to Randao (#2092)
- Fixed the bug where some APIs ignored the ‘input’ field in transaction parameters (#2085)
- Fixed the klay_getBlockWithConsensusInfo API bug (#2071)
- Fixed the debug_chaindbProperty and debug_chaindbCompact APIs and deleted the debug_getDBProperty API (#2062)
Miscellaneous
- Fixed logs (#2078, #2070, #2080)
- Increased Go version requirement to 1.20 (#2065)
- Minor maintenance (#2067, #2073, #2084, #2094, #2102, #2103)
Binaries
- Linux Cypress: (tgz) kcn kpn ken (rpm) kcn kpn ken
- Linux Baobab: (tgz) kcn kpn ken (rpm) kcn kpn ken
- Linux Common: (tgz) kscn kspn ksen kbn kgen homi (rpm) kscn kspn ksen kbn kgen homi
- Darwin Cypress: kcn kpn ken
- Darwin Baobab: kcn kpn ken
- Darwin Common: kscn kspn ksen kbn kgen homi
- Docker:
klaytn/klaytn:v1.12.1
Klaytn v1.12.0 Release Notice
NOTE: Klaytn v1.12.0 contains a hardfork upgrade that results in backward-incompatible changes. All Baobab nodes must be upgraded to v1.12.0 or higher before the target block number. The hardfork block number for Cypress mainnet will be scheduled in the next version.
This version includes two different hardforks. The first is the features equivalent to Ethereum Caucun hardfork, and the second is an optional hardfork implementing the Randao on-chain randomness.
The hardfork schedule is as follows:
Baobab testnet
- Block number: 141367000 (estimated time: 19 Dec, 10:00 AM UTC+9)
- Hardfork contents: Cancun hardfork, Randao hardfork
Cancun Hardfork features
- Added the TLOAD, TSTORE opcodes to EVM according to EIP-1153 (#1988)
- Added the BLOBBASEFEE, BLOBHASH opcodes and the POINT_EVALUATION (0x0a) precompile to EVM according to EIP-4844 and EIP-7516, except Blob transaction type support (#2032)
- Added the MCOPY opcode to EVM according to EIP-5656 (#1980)
- Modified the behavior of the SELFDESTRUCT opcode according to EIP-6780 (#1986)
- Adjusted ComputationCost for the recommended hardware specification, and increased the ComputationCostLimit (#2037)
- Modified the behavior of the EXTCODEHASH opcode to return 0 when the account is empty according to EIP-1052 (#2040)
- Fully support AccessList transaction type according to EIP-2930 (#1955)
Randao Hardfork features
- Added the System Contract Registry according to KIP-149 (#1968, #1987, #1999, #2054, #2059)
- Added the BLS Public Key Registry according to KIP-113 (#1951, #1990, #2017, #2029, #2052, #2053)
- Added the RANDAO fields to block headers according to KIP-114 (#2009, #2014, #2028)
- Modified block proposer selection to use unpredictable randomness according to KIP-146 (#2030, #2039)
Improvements
- Added the Upstream EN feature. When an EN fails to find the block data during an API handling, it can query another EN specified by the
--rpc.upstream-en
flag. (#2013) - Increased the block consensus quorum to harden network security. (#2026)
- The JavaScript runtime of the built-in console now supports ECMAScript6 features (#2001)
- Optimized the data synchronization between RocksDB instances. (#1947)
- Added the node flag
--vm.opdebug
to measure opcode execution times. (#2012) - Transaction-related APIs return more detailed error messages about bad signatures (#1967)
- Optimized the debug_startWarmUp API (#2011)
- Added the debug_traceCall AP to support ERC-4337 bundlers (#1965, #1979)
- Added the admin_nodeConfig API (#1996)
- Added the eth_createAccessList API to help build AccessList type transactions (#2027)
- Added the eth_getBlockReceipts API, and modified the klay_getBlockReceipts API to accept block numbers. (#2019)
Fixes
- Fixed governance-related bugs (#1942, #1984)
- Fixed the debug_setHead API to correctly rewind governance-related internal states. You can attempt recovery from governance-related block sync problems. (#1966, #2002)
- Fixed some log levels. (#1946, #1978)
- Fixed debug_traceTransaction API to correctly function with value transfer to EOAs. (#1953)
- Fixed klay_recoverFromTransaction API to correctly process Ethereum-typed transactions (#1975)
- Fixed the block and header fetching APIs to not fail with the “pending” block number. (#1994)
- Fixed the eth_maxPriorityFeePerGas API to return 0 since Magma hardfork. (#2008)
Miscellaneous
- Update the rlpx and abi packages (#1954, #2015)
- Enable some packages to be built for WASM target (#1983)
- Minor maintenance (#1941, #1944, #1948, #1952, #1956, #1969, #1971, #1972, #1973, #1974, #1977, #1982, #1985, #1991, #1992, #1993, #1995, #1997, #1998, #2004, #2007, #2016, #2020, #2024, #2031, #2033, #2034, #2035, #2036, #2041, #2050, #2055, #2056, #2058, #2061)
Binaries
v1.11.1 Release Notes
What's Changed
Klaytn v1.11.1 contains bug fixes and Cypress hardfork block number configuration. This version states the Cypress hardfork block number that applies the Shanghai EVM compatible features which were implemented in v1.11.0 The hardfork is already applied in the Baobab testnet and is scheduled at below date in the Cypress mainnet. All Cypress nodes have to be upgraded to v1.11.1 or higher before the target block number.
The hardfork schedule is as follows:
Cypress mainnet
- Block number: 135456000
- Estimated time: 16 Oct, 10:30 AM UTC+9
- Hardfork contents: Shanghai hardfork (Refer to the v1.11.0 release note for the features)
Cautions regarding the v1.11.1 upgrade
Besides the Hardfork, there is another breaking change in command line usage, starting from v1.11.0. Refer to the v1.11.0 release note for the details.
Fixes
Miscellaneous
Download
- Linux Cypress: (tgz) kcn kpn ken (rpm) kcn kpn ken
- Linux Baobab: (tgz) kcn kpn ken (rpm) kcn kpn ken
- Linux Common: (tgz) kscn kspn ksen kbn kgen homi (rpm) kscn kspn ksen kbn kgen homi
- Darwin Cypress: kcn kpn ken
- Darwin Baobab: kcn kpn ken
- Darwin Common: kscn kspn ksen kbn kgen homi
- Docker:
klaytn/klaytn:v1.11.1
v1.11.0 Release Notes
Klaytn v1.11.0 contains a hardfork upgrade that results in backward-incompatible changes. All Baobab nodes have to be upgraded to v1.11.0 or higher before the target block number. The hardfork implements the features equivalent to Ethereum Shanghai hardfork. The hardfork block number for Cypress mainnet will be scheduled in the next version.
The hardfork schedule is as follows:
Baobab testnet
- Block number: 131608000 (estimated time: 28 Aug, 10:30 AM UTC+9)
- Hardfork contents: Shanghai hardfork
Cautions regarding the v1.11.0 upgrade
Klaytn uses the urfave/cli to implement the command line interface such as ken
and homi
. Starting from Klaytn version v1.11.0, we switched to urfave/cli v2 to support YAML configuration files. As a result, flags (ex. --datadir
) must come before args (ex. <keyfile>
) which is more POSIX-compliant. You may need to update your scripts as needed.
For example, the below commands will not work. You must be careful because the command lines below, which were working well, no longer run correctly without an error message.
$ ken account import --password <passwordfile> <keyfile> --datadir <datadir>
$ ken --datadir ~/data init ~/genesis.json
$ kcn attach klay.ipc --exec API
$ homi setup local --cn-num 1 --servicechain -o ./homi-output
The below commands will work. Please update your scripts like this example.
$ ken account import --password <passwordfile> --datadir <datadir> <keyfile>
$ ken init --datadir ~/data ~/genesis.json
$ kcn attach --exec <statement> klay.ipc
$ homi setup --gen-type local --cn-num 1 --servicechain -o ./homi-output
Hardfork features
- Adjusted gas cost of the COINBASE opcode according to EIP-3651 (#1883)
- Added the PUSH0 opcode to EVM according to EIP-3855 (#1861)
- Adjusted gas cost related to initcode according to EIP-3860 (#1888)
- Fixed to allow a new contract account to be created by overwriting an EOA (#1904)
Improvements
- Added a new API governance_getRewardsAccumulated to query cumulative block rewards (#1848)
- Added a new API eth_resend to resend transactions with higher gas price (#1894)
- Added a new API klay_forkStatus to query hardfork status (#1804)
- Introduced block range option to the admin_exportChain API (#1873)
- Removed some APIs related to chain configuration and governance. Please use the alternative APIs (#1860)
- Removed APIs: governance_itemsAt, governance_chainConfigAt, governance_chainConfig, klay_govParamsAt, klay_chainConfigAt, klay_chainConfig, klay_gasPriceAt
- Alternative APIs: governance_getParams, governance_getChainConfig, klay_getParams, klay_getChainConfig
- Updated some APIs to return detailed error messages upon transaction failure (#1763 #1845)
- RPC server returns HTTP 503 error when execution time exceeds a timeout (#1921)
- Limits execution time and concurrency of some debug.trace* RPCs (#1920)
- Added new APIs recoverFromTransaction and recoverFromMessage to recover signer address from signatures (#1911 #1937)
- Introduced node flags to specify log file location and rotation settings (#1869 #1884)
- Node flags can be specified using a YAML file (#1684 #1905 #1910 #1917 #1931)
- Added the KIP-111 Live Pruning feature that deletes historic block data in real-time (#1852 #1854 #1859 #1871 #1899 #1902 #1914 #1916)
- Added RocksDB support to allow shared storages among nodes (#1855 #1900 #1912 #1913 #1918)
- Added homi command option to create genesis accounts out of a BIP-39 mnemonic (#1813)
- Updated abigen command to include ABImetadata in the generated files (#1881)
- Added a subcommand, util (#1691)
Fixes
- Fixed unexpected node startup failures (#1829 #1868)
- Fixed JSON-RPC API bugs (#1847 #1851 #1874 #1878 #1903 #1834)
- Fixed reward distribution logic in service chains with deferredTxFee=false configuration (#1886)
- Fixed the bug where BN always recommends the same PN (#1835)
Miscellaneous
- Added BLS algorithm library (#1824 #1825)
- Added new metrics klaytn_vrank* to collect consensus performance data (#1891 #1919)
- Replace the xgo cross compilation system with native builds in each target hosts. (#1862 #1906 #1907)
- Updated the build environment to go1.20 (#1889 #1898 #1901 #1925 #1940)
- Minor Maintenance (#1629 #1712 #1780 #1805 #1807 #1808 #1816 #1818 #1819 #1821 #1826 #1828 #1838 #1840 #1843 #1846 #1856 #1865 #1867 #1872 #1875 #1876 #1880 #1882 #1887 #1890 #1893 #1895 #1896 #1897 #1909 #1923 #1915 #1930 #1929 #1932 #1935 #1938 #1939)
Thank you @hyeonLewis and @Sotatek-TinnNguyen for first contributing to Klaytn, and @ndkoo for finding the security issue.
Binaries
v1.10.2 Release Notes
v1.10.2 Release Notes
Klaytn v1.10.2 contains a hardfork upgrade that results in backward-incompatible changes. All Baobab/Cypress nodes would thus have to be upgraded to v1.10.2 or higher before the target block number. The hardfork implements [KIP-103] that is a technical specification of [KGP-6].
The hardfork schedule is as follows:
Baobab Testnet
- BlockNumber: 119145600 (estimated time: 6 Apr, 4:20 AM UTC+9)
- Hardfork contents: KIP-103 hardfork (Baobab already applied Kore hardfork)
- TreasuryRebalance contract address: 0xD5ad6D61Dd87EdabE2332607C328f5cc96aeCB95
Cypress Mainnet
- BlockNumber: 119750400 (estimated time: 17 Apr, 01:01 AM UTC+9)
- Hardfork contents: Kore, KIP-103 hardforks
- TreasuryRebalance contract address: 0xD5ad6D61Dd87EdabE2332607C328f5cc96aeCB95
*You can find detailed information on TreasuryRebalance contract from KIP-103
NOTE: At the activation of KIP-103, the balance of the Treasury account will be changed in an unusual way. You can find the change result on the TreasuryRebalance contract.
NOTE: Some APIs (governance_getStakingInfo
, klay_getStakingInfo
, governance_getRewards
) change their returning field names of KGF
, KIR
to kff
, kcf
respectively. The old field names will remain before v1.11.0 for backward compatibility.
Hardfork features
Improvements
- Extended the maximum transaction size to 128KB (#1733)
- Enhanced voting input validation of governance system (#1767)
- Unified the activation timing of governance items to the epoch block number (#1772)
- Introduced new APIs reading chain configurations and governance parameters (#1783)
- new APIs:
governance_getParams
,governance_getChainConfig
,klay_getParams
,klay_getChainConfig
- new APIs:
- Introduced timeout trigger on debug tracing APIs (#1762)
- Introduced new admin APIs syncing stakingInfo with other peers (#1778)
admin_syncStakingInfo
andadmin_syncStakingInfoStatus
- Changed returning field names from
kgf/kir
tokff/kcf
(#1789 #1792) kgf
->kff
,kir
->kcf
,KGFAddr
->kffAddr
,KIRAddr
->kcfAddr
- affected APIs:
governance_getStakingInfo
,klay_getStakingInfo
,governance_getRewards
- APIs returns old field name as well before v1.11.0 for backward compatibility
- affected APIs:
- Enables
http
as default RPC server configuration deprecatingfasthttp
(#1786)- If a node configures
fasthttp
, it will be updated tohttp
automatically
- If a node configures
Fixes
- Fixed
governance_paramsAt
API to read a more proper block number (#1779 #1791) - Fixed consensus bugs that can be a problem when committeeSize is equal to or less than 3 (#1787)
- Fixed unexpected node loading failure after unexpected node termination (#1766)
- Fixed
klay_getRewards
API to exclude the remainder in the calculation (#1771)
Miscellaneous
Binaries
v1.10.1 Release Notes
v1.10.1 Release Notes
Klaytn v1.10.1 fixes two kinds of panic issues that can occur in specific situations.
Fixes
- Disabled
StreamRequestBody
option for fasthttp server to avoid panic in fasthttp handler (#1752) - Revived chainConfig in Governance struct to maintain backward compatibility in miscDB (#1749)
Binaries
v1.10.0 Release Notes
v1.10.0 Release Notes
Klaytn v1.10.0 contains a hardfork upgrade that results in backward incompatible changes. All Baobab/Cypress nodes would thus have to be upgraded to v1.10.0 or higher before the target block number. The name of the hardfork is “Kore”. The hardfork contains an implementation of the on-chain governance voting method (KIP-81), a new GC reward structure (KIP-82), and EVM changes.
The planned hardfork schedule is as follows:
- Baobab: 111,736,800 block height (estimated time: 10 Jan, 10:00 AM UTC+9)
- Cypress: March 2023, to be announced with the next release (v1.10.x)
Cautions regarding the v1.10.0 upgrade and Kore hardfork
Following are some important cautions for Klaytn ecosystem participants. Please read this before applying v1.10.0 upgrade and Kore hardfork.
For block explorers (Scope, Finder) and governance analysis tools
- After Kore hardfork, governance voting will be processed in a smart contract according to KIP-81. The existing block header voting mechanism will be used only as a fallback for the contract-based voting mechanism. The finalized governance data can be retrieved from
governance_chainConfigAt(num)
orklay_chainConfigAt(num)
API. More detailed documentation for voting data analysis will be published later after deploying governance contracts. - After Kore hardfork, block reward will be distributed to all valid stakers (CNs) as well as block proposers according to KIP-82. The Gini coefficient will be disregarded for the proposer selection, thus enabling a fairer distribution of rewards among proposers. Reward distribution details including the burn amount can be retrieved via the new
klay_getRewards(num)
API.
For node operators
- All nodes should update their version to v1.10.0 before the Kore hardfork block number. The cypress hardfork block number will be specified in the next Klaytn version after confirming the safety of the hardfork in Baobab network.
- After the v1.10.0 upgrade, NTP time synchronization will be essential by default. If your node has difficulty synchronizing with the NTP server, add the
--ntp.disable
flag in your node configuration. - After the v1.10.0 upgrade, node operators can restrict some features of debug APIs with the
rpc.unsafe-debug.disable
flag. Although debug APIs are supposed to be open to trusted users, some APIs can cause a critical issue when they are exposed to malicious users. Check the details about the restriction in the “Further comments” section of this PR. - After v1.10.0 upgrade, new node flags will be introduced:
--snapshot
,--ntp.disable
,--ntp.server
,--rpc.evmtimeout
. Read below for more details.
For dApp developers
- After the v1.10.0 upgrade, node operators can restrict some features of debug APIs if they set a special configuration. Check the details about the restriction in the “Further comments” section of this PR.
- After Kore hardfork,
opDifficulty
will be replaced withopRandom
with the adoption of EIP-4399. It means that opcode 0x44 will return the previous blockhash of this block instead of the difficulty of the block. - After Kore hardfork, gas costs of
SLOAD
,*CALL
,BALANCE
,EXT*
andSELFDESTRUCT
will increase when they are used for the first time in a transaction, and decrease after the second time with the adoption of EIP-2929. And the gas cost ofModExp
precompiled contract will be defined with the adoption of EIP-2565. - After Kore hardfork, the gas refund for
SELFDESTRUCT
andSSTORE
will be reduced with the adoption of EIP-3529. - After Kore hardfork, a new contract starting with 0xEF byte will fail to be deployed with the adoption of EIP-3541.
For ecosystem participants
- After v1.10.0 upgrade, gini-coefficient will be disabled in block proposer selection. It means that all CN will generate blocks with even probability. The reward will be distributed in another way according to KIP-82. A portion of the block minting amount is allocated to stakers, which is proportional to the KLAY staking amount of each CN.
Kore Hardfork Features
The new features of the Kore hardfork will be applied to the Baobab and Cypress networks according to their respective hardfork block numbers.
- All committee members have an equal chance of being elected block proposers (#1655)
- KIP-81: Implementing the on-chain governance voting method (#1512 #1604
#1614 #1623 #1639 #1640 #1711) - Upgrades to support contract-based on-chain governance mechanism
- Stores the governance configuration on either block headers or a governance parameter contract
- KIP-82: A New GC Reward Structure following the abolition of the Gini Coefficient (#1631 #1642 #1666 #1692 #1709 #1727 #1729 #1734)
- Splits the block proposing reward into minting reward and staking reward
- Distributes staking rewards for valid stakers for every block generation as well as block proproser reward
- Introduces
klay_getRewards
API that returns reward distribution details including the burn amount of a specific block - EIP-2565: ModExp Gas Cost (#1705)
- EIP-2929: Gas cost increases for state access opcodes (#1705)
- EIP-3529: Reduction in refunds (#1705)
- EIP-3541: Reject new contract code starting with the 0xEF byte (#1681)
- EIP-4399: Supplant DIFFICULTY opcode with RANDOM (#1680)
Improvements
- Made
client.Client
to be able to set new HTTP headers (#1632) - Added asynchronous snapshot data generation feature introducing
--snapshot
flag (#1634) - Enhanced time synchronization with NTP and introduced NTP configuration flags,
--ntp.disable
and--ntp.server
(#1641 #1651 #1669) - Introduced gorilla websocket library and enables bi-directional communication (#1652)
- Updated DeriveSha implementation type for Ethereum compatibility and made it an governance item (#1648 #1689 #1693 #1708 #1716)
- Reduced memory usage of RPC server (#1650)
- Added blockHash filter option to
klay_getLogs
API (#1653) - Accepted decimal block number for debug_setHead API (#1697)
- Added
snapshot
sub-command to verify state database (#1701) - Introduced
governance_chainConfigAt
API and refinesgovernance_chainConfig
to support the upgraded governance feature (#1704 #1724) - Introduced
rpc.unsafe-debug.disable
flag that can restrict relatively vulnerable features of debug APIs to secure node from unusual APIs (#GHSA-4vx6-m7jv-g2ch #1722 1746) - Supported
getStakingInfo
,nodeAddress
,chainConfig
, andchainConfigAt
,govParamsAt
APIs inklay
namespace as well asgovernance
namespace. (#1731) - Introduced EVM execution timeout flag,
--rpc.evmtimeout
to manage node resource by node operators (#1736)
Fixes
- Mitigated unintended gas exhaustion of ServiceChain bridge operators during ERC721 transfer (#1445)
- Fixed nil access issues of non-WeightedRandom proposer selection (#1600)
- Fixed rare database corruption issues caused by forced process termination via backup additional block ([#1630](https://github.com/kla...
# v1.9.1 Release Notes
v1.9.1 Release Notes
This version is for the security patch and tracer enhancement.
New Features
- Implemented new APIs tracing transactions in a block range (#1586 #1590)
debug_traceChain
(debug_subscribe
withtraceChain
option) returns subscription ID that providing trace result of the given range. This API should be invoked via websocket connectiondebug_traceBlockByNumberRange
traces all transactions in a given block number range
- Introduced a new node configuration method using yaml (#1580)
Improvements
- Introduced a memory control logic for chaindatafetcher’s range fetching (#1583)
- Refactored tx tracer and enhanced memory control in debug APIs (#1581)
Fixes
- Resolved estimateGas API failures when a sender doesn't have enough KLAY (#1588)
- Prevented node panic via specially crafted p2p message (f727049)
Miscellaneous
Binaries
v1.9.0 Release Notes
v1.9.0 Release Notes
Klaytn v1.9.0 contains a protocol upgrade that results in backward incompatible changes, like the Ethereum hardforks. All Baobab/Cypress nodes would thus have to be upgraded to v1.9.0 or higher before the target block number. The name of the hardfork is ‘Magma’. The hardfork contains an implementation of the dynamic gas price mechanism suggested in KIP71.
The planned hardfork schedule is as follows:
Magma hardfork blocknumber & estimated date
- Baobab:
98347376
11:00 AM (UTC+9) Aug 8 - Cypress:
99841497
11:00 AM (UTC+9) Aug 29
NOTE: This version updates the version of the database to support snapshot sync. You cannot downgrade to the older versions with existing data after updating to v1.9.0.
NOTE: Snapshot sync is shipped on this version, but not yet enabled as default. The state snapshot should be generated on remote peers to sync properly, but it is not yet ready. You can manually enable snapshot sync with --syncmode snap
, but be advised that we expect it would find suitable peers after a few weeks. This feature is only experimental at this moment.
Protocol Upgrade(hardfork) Features
- Implemented dynamic gas price mechanism (#1442 #1452 #1493 #1501 #1518 #1519 #1530 #1537 #1538)
- Implemented APIs to support dynamic gas mechanism (#1520)
klay_upperBoundGasPrice
returns the maximum value of the dynamic gas priceklay_lowerBoundGasPrice
returns the minimum value of the dynamic gas price
- Updated
klay_gasPrice
to suggest2 * currentBlock.baseFee
after Magama hardfork (#1534) - Updated sync of parent chain status (#1427)
New Features
Improvements
- Invalidated the block header having a different changeSet size (#1220)
- Added dynamic waiting time between block generation (#1340)
- Updated callTracer and fastCallTracer to be more descriptive for SELFDESTRUCT operation (#1343)
- Refactored BadBlock handling logic to store it in database (#1371)
- Enhanced txpool validation logic for fee-delegation txs (#1372)
- Introduced rlp package and update rlp-related logic (#1385)
- Added detail revert messages at
klay_call
,klay_estimateGas
(#1408) - Supported daemon execution using Docker with kpn, kcn and kbn *#1476)
- Added constant metric for showing binary version (#1488)
Fixes
- Fixed tracer to handle inner insta-fail (#1352)
- Removed vote when checkVote() fails in HandleGovernanceVote (#1367)
- Fixed multiChannelPeer ReadMsg loop to read closed ch immediately (#1389)
- Fixed a potential buffer-over-run in transaction sorting (#1398)
- Fixed concurrency API call bugs related to service chain (#1438)
- Increased required consensus messages with six validators or less (#1462)
- Filled missing Gini field to the GetStakingInfo result (#1464)
- Fixed wrong return of api related to snapshot (#1468)
- Fixed DoCall for free to transaction with no price fields (#1540)
- Enhanced validations for tracer output converting logic (#1549)
Miscellaneous
Binaries
v1.8.4 Release Notes
v1.8.4 Release Notes
We are happy to announce that Klaytn v1.8.4 has been released, with improvements for the ServiceChain, which is an integral part of Klaytn’s Metaverse Package.
This release has only to do with the ServiceChain, so there is no need to update your nodes that don’t support ServiceChain bridges.
Improvements
- Introduced the
SC_VTRECOVERY_INTERVAL
configuration which sets the recovery interval, and renamesVTRECOVERY
toSC_VTRECOVERY
. (#1271) - Added two APIs for the Subbridge namespace
subbridge_getChildBridgeContractBalance
andsubbridge_getParentBridgeContractBalance
to return the balance for the respective contracts. (#1254) - Added a logic in
setBridge()
to check whether an address is a contract. (#1299) - Added request timeout flag for KAS, which can be set in the configuration file.(#1284)
- Introduced
SC_DEFAULTGASLIMIT
to make ServiceChain default gas limit configurable.(#1287) - Enabled separate gas limit setting for parent/child chains introducing new configurations and APIs. (#1353)
- Configurations:
SC_PARENT_OPERATOR_GASLIMIT
andSC_CHILD_OPERATOR_GASLIMIT
- APIs:
subbridge_setParentBridgeOperatorGasLimit
,subbridge_setChildBridgeOperatorGasLimit
,subbridge_getParentBridgeOperatorGasLimit
, andsubbridge_getChildBridgeOperatorGasLimit
- Configurations:
- Added the
chaindatafetcher
option in KSEN. (#1347 #1344)
Fixes
- Introduced a new value transfer event
RequestValueTransferEncoded
supporting URI of ERC-721 in the BridgeTransfer contract. (#1321 #1378)
Miscellaneous
Binaries
What's Changed
- [Master] release/v1.8.4 QA Sign-off by @circleci-klaytn in #1384
Full Changelog: v1.8.3...v1.8.4