Skip to content

Commit 26c04ac

Browse files
authored
release v1.11.0 (#254)
1 parent 437a29c commit 26c04ac

File tree

5 files changed

+125
-28
lines changed

5 files changed

+125
-28
lines changed

README.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919

2020
Here are the software versions we use:
2121

22-
- MainNet: v1.10.1
22+
- MainNet: v1.11.0
2323

2424
## <a name="testnet"/>Join TestNet
2525
To start and run a testnet node, please click [**Join Testnet**](https://github.com/iotexproject/iotex-bootstrap/blob/master/README_testnet.md)
@@ -30,7 +30,7 @@ This is the recommended way to start an IoTeX node
3030
1. Pull the docker image:
3131

3232
```
33-
docker pull iotex/iotex-core:v1.10.1
33+
docker pull iotex/iotex-core:v1.11.0
3434
```
3535

3636
2. Set the environment with the following commands:
@@ -45,9 +45,9 @@ mkdir -p $IOTEX_HOME/data
4545
mkdir -p $IOTEX_HOME/log
4646
mkdir -p $IOTEX_HOME/etc
4747
48-
curl https://raw.githubusercontent.com/iotexproject/iotex-bootstrap/v1.10.1/config_mainnet.yaml > $IOTEX_HOME/etc/config.yaml
49-
curl https://raw.githubusercontent.com/iotexproject/iotex-bootstrap/v1.10.1/genesis_mainnet.yaml > $IOTEX_HOME/etc/genesis.yaml
50-
curl https://raw.githubusercontent.com/iotexproject/iotex-bootstrap/v1.10.1/trie.db.patch > $IOTEX_HOME/data/trie.db.patch
48+
curl https://raw.githubusercontent.com/iotexproject/iotex-bootstrap/v1.11.0/config_mainnet.yaml > $IOTEX_HOME/etc/config.yaml
49+
curl https://raw.githubusercontent.com/iotexproject/iotex-bootstrap/v1.11.0/genesis_mainnet.yaml > $IOTEX_HOME/etc/genesis.yaml
50+
curl https://raw.githubusercontent.com/iotexproject/iotex-bootstrap/v1.11.0/trie.db.patch > $IOTEX_HOME/data/trie.db.patch
5151
```
5252

5353
3. Edit `$IOTEX_HOME/etc/config.yaml`, look for `externalHost` and `producerPrivKey`, uncomment the lines and fill in your external IP and private key. If you leave `producerPrivKey` empty, your node will be assgined with a random key.
@@ -87,7 +87,7 @@ docker run -d --restart on-failure --name iotex \
8787
-v=$IOTEX_HOME/log:/var/log:rw \
8888
-v=$IOTEX_HOME/etc/config.yaml:/etc/iotex/config_override.yaml:ro \
8989
-v=$IOTEX_HOME/etc/genesis.yaml:/etc/iotex/genesis.yaml:ro \
90-
iotex/iotex-core:v1.10.1 \
90+
iotex/iotex-core:v1.11.0 \
9191
iotex-server \
9292
-config-path=/etc/iotex/config_override.yaml \
9393
-genesis-path=/etc/iotex/genesis.yaml
@@ -107,7 +107,7 @@ docker run -d --restart on-failure --name iotex \
107107
-v=$IOTEX_HOME/log:/var/log:rw \
108108
-v=$IOTEX_HOME/etc/config.yaml:/etc/iotex/config_override.yaml:ro \
109109
-v=$IOTEX_HOME/etc/genesis.yaml:/etc/iotex/genesis.yaml:ro \
110-
iotex/iotex-core:v1.10.1 \
110+
iotex/iotex-core:v1.11.0 \
111111
iotex-server \
112112
-config-path=/etc/iotex/config_override.yaml \
113113
-genesis-path=/etc/iotex/genesis.yaml \
@@ -128,7 +128,7 @@ Same as [Join MainNet](#mainnet) step 2
128128
```
129129
git clone https://github.com/iotexproject/iotex-core.git
130130
cd iotex-core
131-
git checkout v1.10.1
131+
git checkout v1.11.0
132132
133133
// optional
134134
export GOPROXY=https://goproxy.io

README_CN.md

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
1. 提取(pull) docker镜像
3131

3232
```
33-
docker pull iotex/iotex-core:v1.10.1
33+
docker pull iotex/iotex-core:v1.11.0
3434
```
3535

3636
2. 使用以下命令设置运行环境
@@ -45,9 +45,8 @@ mkdir -p $IOTEX_HOME/data
4545
mkdir -p $IOTEX_HOME/log
4646
mkdir -p $IOTEX_HOME/etc
4747
48-
curl https://raw.githubusercontent.com/iotexproject/iotex-bootstrap/v1.10.1/config_mainnet.yaml > $IOTEX_HOME/etc/config.yaml
49-
curl https://raw.githubusercontent.com/iotexproject/iotex-bootstrap/v1.10.1/genesis_mainnet.yaml > $IOTEX_HOME/etc/genesis.yaml
50-
curl https://raw.githubusercontent.com/iotexproject/iotex-bootstrap/v1.10.1/trie.db.patch > $IOTEX_HOME/data/trie.db.patch
48+
curl https://raw.githubusercontent.com/iotexproject/iotex-bootstrap/v1.11.0/config_mainnet.yaml > $IOTEX_HOME/etc/config.yaml
49+
curl https://raw.githubusercontent.com/iotexproject/iotex-bootstrap/v1.11.0/genesis_mainnet.yaml > $IOTEX_HOME/etc/genesis.yaml
5150
```
5251

5352
3. 编辑 `$IOTEX_HOME/etc/config.yaml`, 查找 `externalHost``producerPrivKey`, 取消注释行并填写您的外部 IP 和私钥。如果`producerPrivKey`放空,你的节点将被分配一个随机密钥。
@@ -84,7 +83,7 @@ docker run -d --restart on-failure --name iotex \
8483
-v=$IOTEX_HOME/log:/var/log:rw \
8584
-v=$IOTEX_HOME/etc/config.yaml:/etc/iotex/config_override.yaml:ro \
8685
-v=$IOTEX_HOME/etc/genesis.yaml:/etc/iotex/genesis.yaml:ro \
87-
iotex/iotex-core:v1.10.1 \
86+
iotex/iotex-core:v1.11.0 \
8887
iotex-server \
8988
-config-path=/etc/iotex/config_override.yaml \
9089
-genesis-path=/etc/iotex/genesis.yaml
@@ -102,7 +101,7 @@ docker run -d --restart on-failure --name iotex \
102101
-v=$IOTEX_HOME/log:/var/log:rw \
103102
-v=$IOTEX_HOME/etc/config.yaml:/etc/iotex/config_override.yaml:ro \
104103
-v=$IOTEX_HOME/etc/genesis.yaml:/etc/iotex/genesis.yaml:ro \
105-
iotex/iotex-core:v1.10.1 \
104+
iotex/iotex-core:v1.11.0 \
106105
iotex-server \
107106
-config-path=/etc/iotex/config_override.yaml \
108107
-genesis-path=/etc/iotex/genesis.yaml \
@@ -122,7 +121,7 @@ docker run -d --restart on-failure --name iotex \
122121
```
123122
git clone https://github.com/iotexproject/iotex-core.git
124123
cd iotex-core
125-
git checkout v1.10.1
124+
git checkout v1.11.0
126125
127126
// optional
128127
export GOPROXY=https://goproxy.io

README_CN_testnet.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
1. 提取(pull) docker镜像
3030

3131
```
32-
docker pull iotex/iotex-core:v1.11.0-rc3
32+
docker pull iotex/iotex-core:v1.11.0
3333
```
3434

3535
2. 使用以下命令设置运行环境
@@ -44,8 +44,8 @@ mkdir -p $IOTEX_HOME/data
4444
mkdir -p $IOTEX_HOME/log
4545
mkdir -p $IOTEX_HOME/etc
4646
47-
curl https://raw.githubusercontent.com/iotexproject/iotex-bootstrap/v1.10.1/config_testnet.yaml > $IOTEX_HOME/etc/config.yaml
48-
curl https://raw.githubusercontent.com/iotexproject/iotex-bootstrap/v1.10.1/genesis_testnet.yaml > $IOTEX_HOME/etc/genesis.yaml
47+
curl https://raw.githubusercontent.com/iotexproject/iotex-bootstrap/v1.11.0/config_testnet.yaml > $IOTEX_HOME/etc/config.yaml
48+
curl https://raw.githubusercontent.com/iotexproject/iotex-bootstrap/v1.11.0/genesis_testnet.yaml > $IOTEX_HOME/etc/genesis.yaml
4949
```
5050

5151
3. 编辑 `$IOTEX_HOME/etc/config.yaml`, 查找 `externalHost``producerPrivKey`, 取消注释行并填写您的外部 IP 和私钥。如果`producerPrivKey`放空,你的节点将被分配一个随机密钥。
@@ -82,7 +82,7 @@ docker run -d --restart on-failure --name iotex \
8282
-v=$IOTEX_HOME/log:/var/log:rw \
8383
-v=$IOTEX_HOME/etc/config.yaml:/etc/iotex/config_override.yaml:ro \
8484
-v=$IOTEX_HOME/etc/genesis.yaml:/etc/iotex/genesis.yaml:ro \
85-
iotex/iotex-core:v1.11.0-rc3 \
85+
iotex/iotex-core:v1.11.0 \
8686
iotex-server \
8787
-config-path=/etc/iotex/config_override.yaml \
8888
-genesis-path=/etc/iotex/genesis.yaml
@@ -100,7 +100,7 @@ docker run -d --restart on-failure --name iotex \
100100
-v=$IOTEX_HOME/log:/var/log:rw \
101101
-v=$IOTEX_HOME/etc/config.yaml:/etc/iotex/config_override.yaml:ro \
102102
-v=$IOTEX_HOME/etc/genesis.yaml:/etc/iotex/genesis.yaml:ro \
103-
iotex/iotex-core:v1.11.0-rc3 \
103+
iotex/iotex-core:v1.11.0 \
104104
iotex-server \
105105
-config-path=/etc/iotex/config_override.yaml \
106106
-genesis-path=/etc/iotex/genesis.yaml \
@@ -120,7 +120,7 @@ docker run -d --restart on-failure --name iotex \
120120
```
121121
git clone https://github.com/iotexproject/iotex-core.git
122122
cd iotex-core
123-
git checkout v1.11.0-rc3
123+
git checkout v1.11.0
124124
125125
// optional
126126
export GOPROXY=https://goproxy.io

README_testnet.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818

1919
Here are the software versions we use:
2020

21-
- TestNet: v1.11.0-rc3
21+
- TestNet: v1.11.0
2222

2323
**Note**
2424
To start and run a mainnet node, please click [**Join Mainnet**](https://github.com/iotexproject/iotex-bootstrap/blob/master/README.md)
@@ -29,7 +29,7 @@ This is the recommended way to start an IoTeX node
2929
1. Pull the docker image:
3030

3131
```
32-
docker pull iotex/iotex-core:v1.11.0-rc3
32+
docker pull iotex/iotex-core:v1.11.0
3333
```
3434

3535
2. Set the environment with the following commands:
@@ -44,8 +44,8 @@ mkdir -p $IOTEX_HOME/data
4444
mkdir -p $IOTEX_HOME/log
4545
mkdir -p $IOTEX_HOME/etc
4646
47-
curl https://raw.githubusercontent.com/iotexproject/iotex-bootstrap/master/config_testnet.yaml > $IOTEX_HOME/etc/config.yaml
48-
curl https://raw.githubusercontent.com/iotexproject/iotex-bootstrap/master/genesis_testnet.yaml > $IOTEX_HOME/etc/genesis.yaml
47+
curl https://raw.githubusercontent.com/iotexproject/iotex-bootstrap/v1.11.0/config_testnet.yaml > $IOTEX_HOME/etc/config.yaml
48+
curl https://raw.githubusercontent.com/iotexproject/iotex-bootstrap/v1.11.0/genesis_testnet.yaml > $IOTEX_HOME/etc/genesis.yaml
4949
```
5050

5151
3. Edit `$IOTEX_HOME/etc/config.yaml`, look for `externalHost` and `producerPrivKey`, uncomment the lines and fill in your external IP and private key. If you leave `producerPrivKey` empty, your node will be assgined with a random key.
@@ -85,7 +85,7 @@ docker run -d --restart on-failure --name iotex \
8585
-v=$IOTEX_HOME/log:/var/log:rw \
8686
-v=$IOTEX_HOME/etc/config.yaml:/etc/iotex/config_override.yaml:ro \
8787
-v=$IOTEX_HOME/etc/genesis.yaml:/etc/iotex/genesis.yaml:ro \
88-
iotex/iotex-core:v1.11.0-rc3 \
88+
iotex/iotex-core:v1.11.0 \
8989
iotex-server \
9090
-config-path=/etc/iotex/config_override.yaml \
9191
-genesis-path=/etc/iotex/genesis.yaml
@@ -105,7 +105,7 @@ docker run -d --restart on-failure --name iotex \
105105
-v=$IOTEX_HOME/log:/var/log:rw \
106106
-v=$IOTEX_HOME/etc/config.yaml:/etc/iotex/config_override.yaml:ro \
107107
-v=$IOTEX_HOME/etc/genesis.yaml:/etc/iotex/genesis.yaml:ro \
108-
iotex/iotex-core:v1.11.0-rc3 \
108+
iotex/iotex-core:v1.11.0 \
109109
iotex-server \
110110
-config-path=/etc/iotex/config_override.yaml \
111111
-genesis-path=/etc/iotex/genesis.yaml \
@@ -126,7 +126,7 @@ Same as [Join TestNet](#testnet) step 2
126126
```
127127
git clone https://github.com/iotexproject/iotex-core.git
128128
cd iotex-core
129-
git checkout v1.11.0-rc3
129+
git checkout v1.11.0
130130
131131
// optional
132132
export GOPROXY=https://goproxy.io

changelog/v1.11.0-release-note.md

Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
# v1.11.0 Release Note
2+
3+
## Summary
4+
**v1.11.0 has a hardfork, which will be activated at block height
5+
24,838,201 (ETA is around 07/20/2023 11pm UTC) on IoTeX mainnet.**
6+
7+
All nodes **must** upgrade to this release, or otherwise the node won't be able
8+
to sync with the IoTeX blockchain after the activation block.
9+
10+
**Note:**
11+
You must upgrade to the latest config.yaml and genesis.yaml before re-starting the
12+
node. These 2 files contain new configurations necessary for v1.11.0 to work correctly.
13+
14+
## Breaking Changes
15+
v1.11.0 enables 3 important features:
16+
1. IIP-13 Represent Staking Buckets As Non-fungible Tokens
17+
2. IIP-14 Account Abstraction
18+
3. Enforce ChainID in transaction to prevent possible replay
19+
20+
### IIP-13 Represent Staking Buckets As Non-fungible Tokens
21+
IIP-13 supports native representation of staking buckets as Non-fungible Tokens
22+
on the IoTeX blockchain, which opens opportunities for applications such as
23+
Liquid Staking Derivatives (LSD), where these buckets can be traded or used as
24+
collateral in other DeFi protocols. This in turn increases the overall staking
25+
ratio and therefore enhances the degrees of security and decentralization of the
26+
IoTeX blockchain.
27+
28+
### IIP-14 Account Abstraction
29+
IIP-14 Account abstraction is a ground-breaking proposal that aims to enhance
30+
the IoTeX platform by abstracting various account operations and properties,
31+
such as authentication, authorization, replay protection, gas payment, batching,
32+
and atomicity. IIP-14, based on EIP-4337, makes IoTeX a more user-friendly and
33+
secure platform, surpassing the limitations of externally owned accounts (EOAs).
34+
For more information on the implementation details, please refer to ​our github
35+
repo [here](https://github.com/iotexproject/account-abstraction-contracts)
36+
37+
### Enforce ChainID in transaction for enhanced transaction security
38+
In v1.8 release, we added ChainID into transaction to distinguish transactions on
39+
different networks. In this v1.11 release, the additional constraint is enforced
40+
that each transaction must bear with it the correct ChainID (1 for mainnet, and 2
41+
for testnet), and the default ChainID value 0 will be rejected. This would further
42+
enhance the security of the IoTeX blockchain.
43+
44+
## Other Improvements
45+
v1.11 release also comes with a couple of small improvements:
46+
1. Added an `ioctl bc delegate` command to retrieve the detailed info of a delegate
47+
2. Added summary about the node status into console log output
48+
3. Enabled message batch in API service to improving network data efficiency
49+
4. Added an `ioctl did service` command
50+
5. Added system action validation step in the block validation process
51+
52+
## Upgrade Priority
53+
v1.11.0 comes with a hardfork, so all nodes **must** upgrade in order to keep
54+
syncing with the IoTeX blockchain
55+
56+
| Node type | Action |
57+
| ---------- | ------------ |
58+
| Delegate | Must upgrade |
59+
| Fullnode | Must upgrade |
60+
61+
## Important Commits (not a complete list)
62+
1. [genesis] set Quebec to activate at 07-12-2023 11pm UTC [#3895](https://github.com/iotexproject/iotex-core/pull/3895)
63+
2. [chainservice] check SystemStakingContract and SystemSGDContract address [#3896](https://github.com/iotexproject/iotex-core/pull/3896)
64+
3. [iip-13] set mainnet contract address and height [#3894](https://github.com/iotexproject/iotex-core/pull/3894)
65+
4. [ioctl] add bc delegate command [#3891](https://github.com/iotexproject/iotex-core/pull/3891)
66+
5. [contract_indexer] improve robustness [#3892](https://github.com/iotexproject/iotex-core/pull/3892)
67+
6. Process batch serialise concurrently [#3877](https://github.com/iotexproject/iotex-core/pull/3877)
68+
7. [contract_indexer] fix vote bug when change delegate [#3888](https://github.com/iotexproject/iotex-core/pull/3888)
69+
8. [contract_indexer] fix transfer event handling [#3887](https://github.com/iotexproject/iotex-core/pull/3887)
70+
9. Log summary about the node status [#3870](https://github.com/iotexproject/iotex-core/pull/3870)
71+
10. [api] ReadStateBucketByIndices return existing buckets [#3878](https://github.com/iotexproject/iotex-core/pull/3878)
72+
11. [iip-13] contract indexer handle BucketExpanded event [#3881](https://github.com/iotexproject/iotex-core/pull/3881)
73+
12. [staking] fix readStateCandidates returning empty [#3882](https://github.com/iotexproject/iotex-core/pull/3882)
74+
13. [staking] validate address of contract indexer [#3874](https://github.com/iotexproject/iotex-core/pull/3874)
75+
14. [staking] add BucketTypes web3 api [#3876](https://github.com/iotexproject/iotex-core/pull/3876)
76+
15. implement composite buckets web3 api [#3875](https://github.com/iotexproject/iotex-core/pull/3875)
77+
16. [actpool] forbid processing system action [#3867](https://github.com/iotexproject/iotex-core/pull/3867)
78+
17. [iip-15] sgd indexer to ignore block less than start height [#3873](https://github.com/iotexproject/iotex-core/pull/3873)
79+
18. [iip-15] sgdRegistry implementation [#3845](https://github.com/iotexproject/iotex-core/pull/3845)
80+
19. [blockdao] introduce blockindexer with start height [#3869](https://github.com/iotexproject/iotex-core/pull/3869)
81+
20. [IIP-13] contract indexer ignore blocks lower than height of contract deployment [#3868](https://github.com/iotexproject/iotex-core/pull/3868)
82+
21. [config] enforce correct chainID and enable IIP-13 at Quebec height [#3866](https://github.com/iotexproject/iotex-core/pull/3866)
83+
22. [IIP-13] enable contract staking indexer [#3865](https://github.com/iotexproject/iotex-core/pull/3865)
84+
23. [IIP-13] combine native and LSD buckets [#3859](https://github.com/iotexproject/iotex-core/pull/3859)
85+
24. [IIP-13] handle contract staking events to store buckets into index [#3863](https://github.com/iotexproject/iotex-core/pull/3863)
86+
25. [IIP-13] introduce read contract staking buckets [#3862](https://github.com/iotexproject/iotex-core/pull/3862)
87+
26. [IIP-13] contract staking struct definition [#3861](https://github.com/iotexproject/iotex-core/pull/3861)
88+
27. [api] Enable message batching [#3857](https://github.com/iotexproject/iotex-core/pull/3857)
89+
28. [iip-15] Sharing gas-fee for DApps [#3844](https://github.com/iotexproject/iotex-core/pull/3844)
90+
29. [IIP-13] Combine native and liquid stake votes [#3855](https://github.com/iotexproject/iotex-core/pull/3855)
91+
30. unitest for iip15-manager contract [#3850](https://github.com/iotexproject/iotex-core/pull/3850)
92+
31. [context] remove EnableWeb3Rewarding flag [#3852](https://github.com/iotexproject/iotex-core/pull/3852)
93+
32. [context] remove FixRewardErroCheckPosition flag [#3851](https://github.com/iotexproject/iotex-core/pull/3851)
94+
33. [ioctl] add did service command [#3848](https://github.com/iotexproject/iotex-core/pull/3848)
95+
34. refactor did ioctl to new resolver [#3841](https://github.com/iotexproject/iotex-core/pull/3841)
96+
35. [state] validate system action layout [#3838](https://github.com/iotexproject/iotex-core/pull/3838)
97+
36. [state] fix test and speedup validation [#3842](https://github.com/iotexproject/iotex-core/pull/3842)
98+
37. [api] ServerV2.Stop() use correct context [#3837](https://github.com/iotexproject/iotex-core/pull/3837)

0 commit comments

Comments
 (0)