CKB2021 Hardfork Code Changes Overview

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.

1 Like