|
| 1 | +# v1.14.0 Release Note |
| 2 | + |
| 3 | +## Summary |
| 4 | +**v1.14.0 has a hardfork, which will be activated at block height 29,275,561 |
| 5 | +(ETA is around 04/03/2024 00:52:05 AM UTC) on IoTeX mainnet.** |
| 6 | + |
| 7 | +All nodes **must** upgrade to this release, otherwise the node runs the risk of |
| 8 | +not being able to sync with the IoTeX blockchain after other nodes have upgraded. |
| 9 | + |
| 10 | +**Note:** |
| 11 | +There's no change to the mainnet config.yaml and genesis.yaml. You only need to |
| 12 | +restart your node with the new v1.14.0 image. |
| 13 | + |
| 14 | +Version 1.14.0 has enabled two significant new features: IIP-24 Raise Block Gas |
| 15 | +Limit to 50M and IIP-25 delegate endorsement. |
| 16 | + |
| 17 | +With IIP-24, the block gas limit has now been raised to 50M, greatly enhancing |
| 18 | +the processing capabilities of the IoTeX blockchain while ensuring its stability. |
| 19 | +This enhancement allows the blockchain to achieve a maximum of 1000 TPS |
| 20 | +(transactions per second), significantly speeding up transaction processing on |
| 21 | +the blockchain, especially during times of network congestion. |
| 22 | + |
| 23 | +The activation of IIP-25 introduces a novel governance model: it allows big |
| 24 | +stakeholder to create a bucket for endorsing delegate. This would make delegate |
| 25 | +management more flexible and encourage more enthusiastic projects to become IoTeX |
| 26 | +delegates and actively participate in the IoTeX network operation, thereby |
| 27 | +fostering the inclusivity of the IoTeX network and enhancing the diversity of the |
| 28 | +ecosystem. |
| 29 | + |
| 30 | +## Other Improvements |
| 31 | +v1.14.0 release also comes with a couple of improvements: |
| 32 | +1. Improved performance for DB snapshot operation |
| 33 | +2. Enabled web3js format for CandidateActivate and CandidateEndorsement |
| 34 | +3. Make action pick order deterministic |
| 35 | +4. Added more unit tests and end-to-end tests |
| 36 | + |
| 37 | +## Upgrade Priority |
| 38 | +v1.14.0 comes with a hardfork, so all nodes **must** upgrade in order to keep |
| 39 | +syncing with the IoTeX blockchain |
| 40 | + |
| 41 | +| Node type | Action | |
| 42 | +| ---------- | ------------ | |
| 43 | +| Delegate | Must upgrade | |
| 44 | +| Fullnode | Must upgrade | |
| 45 | + |
| 46 | +## Important Commits (not a complete list) |
| 47 | +1. [tools] fix readme typos [#4199](https://github.com/iotexproject/iotex-core/pull/4199) |
| 48 | +2. feat(api): add unit test for coreService [#4193](https://github.com/iotexproject/iotex-core/pull/4193) |
| 49 | +3. feat(wsctl): add project configuration cmd [#4195](https://github.com/iotexproject/iotex-core/pull/4195) |
| 50 | +4. [staking] testing endorsed bucket with existing staking actions [#4186](https://github.com/iotexproject/iotex-core/pull/4186) |
| 51 | +5. use buffered channel [#4197](https://github.com/iotexproject/iotex-core/pull/4197) |
| 52 | +6. feat(api): fix overflow in coreservice [#4192](https://github.com/iotexproject/iotex-core/pull/4192) |
| 53 | +7. test: add unit test for module blockdao [#4182](https://github.com/iotexproject/iotex-core/pull/4182) |
| 54 | +8. add e2etest for refactor fresh account conversion [#4184](https://github.com/iotexproject/iotex-core/pull/4184) |
| 55 | +9. [context] enable delegate endorsement and refactor fresh account conversion at Tsunami height [#4188](https://github.com/iotexproject/iotex-core/pull/4188) |
| 56 | +10. [staking] reject endorse action before HF activated [#4187](https://github.com/iotexproject/iotex-core/pull/4187) |
| 57 | +11. [staking] Cannot withdraw endorsement if it is withdrawing [#4179](https://github.com/iotexproject/iotex-core/pull/4179) |
| 58 | +12. [genesis] raise block gas limit to 50M starting Tsunami height [#4181](https://github.com/iotexproject/iotex-core/pull/4181) |
| 59 | +13. [genesis] add Tsunami block height [#4180](https://github.com/iotexproject/iotex-core/pull/4180) |
| 60 | +14. [account] revert ConvertFreshAccountToZeroNonceType func [#4163](https://github.com/iotexproject/iotex-core/pull/4163) |
| 61 | +15. [evm] add transaction log for Suicide() [#4171](https://github.com/iotexproject/iotex-core/pull/4171) |
| 62 | +16. [actpool] deterministic action pick order [#4175](https://github.com/iotexproject/iotex-core/pull/4175) |
| 63 | +17. [api] remove height check for message batcher [#4176](https://github.com/iotexproject/iotex-core/pull/4176) |
| 64 | +18. [action] Web3 for CandidateActivate and CandidateEndorsement [#4140](https://github.com/iotexproject/iotex-core/pull/4140) |
| 65 | +19. clean up blockdao [#4164](https://github.com/iotexproject/iotex-core/pull/4164) |
| 66 | +20. [staking] Candidate Register without Staking [#4059](https://github.com/iotexproject/iotex-core/pull/4059) |
| 67 | +21. [staking] ActiveCandidate Exclude Candidate with Expired Endorsement [#4062](https://github.com/iotexproject/iotex-core/pull/4062) |
| 68 | +22. [blockchain] add uni tests for runnable.go [#4172](https://github.com/iotexproject/iotex-core/pull/4172) |
| 69 | +23. [staking] Fix typo error [#4173](https://github.com/iotexproject/iotex-core/pull/4173) |
| 70 | +24. [staking] Cannot ChangeCandidate when Bucket is Endorsed [#4133](https://github.com/iotexproject/iotex-core/pull/4133) |
| 71 | +25. [api] get method return msg [#4142](https://github.com/iotexproject/iotex-core/pull/4142) |
| 72 | +26. [staking] Cannot Unstake if Bucket is Endorsed [#4134](https://github.com/iotexproject/iotex-core/pull/4134) |
| 73 | +27. [db] Remove duplicate keys when WriteBatch [#4155](https://github.com/iotexproject/iotex-core/pull/4155) |
| 74 | +28. fix test [#4165](https://github.com/iotexproject/iotex-core/pull/4165) |
| 75 | +29. reset only if snapshots size exceed 10 [#4152](https://github.com/iotexproject/iotex-core/pull/4152) |
| 76 | +30. [evm] add transient storage [#4151](https://github.com/iotexproject/iotex-core/pull/4151) |
| 77 | +31. [staking] Replace ContainsSelfStakingBucket with isSelfStakeBucket [#4139](https://github.com/iotexproject/iotex-core/pull/4139) |
| 78 | +32. add test [#4138](https://github.com/iotexproject/iotex-core/pull/4138) |
| 79 | +33. [db] ResetSnapshots() performance improvement [#4153](https://github.com/iotexproject/iotex-core/pull/4153) |
| 80 | +34. test(contractstaking): add unit tests [#4126](https://github.com/iotexproject/iotex-core/pull/4126) |
| 81 | +35. update tests for rlp_tx.go [#4145](https://github.com/iotexproject/iotex-core/pull/4145) |
| 82 | +36. feat(test): add unit test web3server_utils [#4146](https://github.com/iotexproject/iotex-core/pull/4146) |
| 83 | +37. sgdindexer performance improvement [#4148](https://github.com/iotexproject/iotex-core/pull/4148) |
| 84 | +38. [api] verify received tx hash is correct [#4074](https://github.com/iotexproject/iotex-core/pull/4074) |
| 85 | +39. add test for actionByPrice [#4135](https://github.com/iotexproject/iotex-core/pull/4135) |
| 86 | +40. fix benchmark [#4127](https://github.com/iotexproject/iotex-core/pull/4127) |
| 87 | +41. [genesis] test coverage [#4125](https://github.com/iotexproject/iotex-core/pull/4125) |
| 88 | +42. feat(test): add web3server unit test [#4131](https://github.com/iotexproject/iotex-core/pull/4131) |
| 89 | +43. [staking] Handling CandidateEndorsement Action [#4020](https://github.com/iotexproject/iotex-core/pull/4020) |
| 90 | +44. [staking] CandidateCenter Support for Missing and Changes of Self-Stake Bucket [#4060](https://github.com/iotexproject/iotex-core/pull/4060) |
| 91 | +45. [staking] Handling CandidateActivate Action [#4011](https://github.com/iotexproject/iotex-core/pull/4011) |
| 92 | +46. [refactor] Add bucket validation util functions [#4019](https://github.com/iotexproject/iotex-core/pull/4019) |
| 93 | +47. [staking] Implement Endorsement Statemanager [#4018](https://github.com/iotexproject/iotex-core/pull/4018) |
0 commit comments