The follow PRs contain the major changes of the first CKB hard fork CKB2021:
- ckb#2756 contains VM related changes, including RFC32, 33, and 34.
- ckb#2798 removes the immature limit on using the header deps, see RFC36.
- ckb#2796 updates network protocols, see RFC36.
- ckb#2715 contains remaining RFCs, RFC28, 29, 30, and 31.
In the old code, the RFCs are referenced by PR numbers. In ckb#2867, they are all renamed to the current RFC numbers allocation. Use the following table to find the correct RFC numbers:
|RFC||Used Numbers||Link to PR|
|RFC28 Use Block Timestamp as Start Timestamp in Since||221||rfcs#221|
|RFC29 Allow multiple matches on dep cells via type script hash when these cells have the same data||222||rfcs#222|
|RFC30 Ensure that index is less than length in input since field using epoch.||223||rfcs#223|
|RFC31 Add a variable length field in the block header||224||rfcs#224|
|RFC32 CKB VM version selection||232, 238||rfcs#238|
|RFC33 ckb vm version1 changes||236||rfcs#236|
|RFC34 vm syscalls 2||237||rfcs#237|
|RFC35 Ckb2021 P2P protocol upgrade||234||rfcs#234|
|RFC36 Remove header deps immature rule||240||rfcs#240|
|RFC37 Ckb2021 overview||242||rfcs#242|
RFC37 is the overview of all the hardfork RFCs.