Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RFC29: Allow multiple matches on dep cells via type script hash when these cells have the same data #222

Conversation

doitian
Copy link
Member

@doitian doitian commented Feb 3, 2021

No description provided.

@doitian doitian requested a review from a team as a code owner February 3, 2021 13:06
@doitian doitian added b:consensus Break consensus hard-fork labels Feb 4, 2021
@doitian doitian added this to 🚧 In progress in CKB - Pull Requests Feb 9, 2021
@doitian doitian mentioned this pull request Apr 25, 2021
10 tasks
@doitian doitian added the ckb2021 Hard fork scheduled in 2021 label Apr 26, 2021
bors bot added a commit to nervosnetwork/ckb that referenced this pull request Jun 15, 2021
2715: feat(hardfork): ckb2021 hardfork features r=yangby-cryptape a=yangby-cryptape

### Suggestions for Review

**The best way to review this PR is reviewing each commit independently.**

### Brief introduction for Commits

#### New hardfork Features

**All following features can be found in RFC PRs.**

- feat(hardfork): in the "since epoch", the index should be less than length

  Ref: [CKB-RFCs PR 223: Ensure that index < length in input since field using epoch](nervosnetwork/rfcs#223)

- feat(hardfork): use block timestamp of input cells as relative since start timestamp

  Ref: [CKB-RFCs PR 221: Use Block Timestamp as Start Timestamp in Since](nervosnetwork/rfcs#221)

- **[Reverted]** ~~feat(hardfork): allow unknown block versions and transactions versions~~

  ~~Ref: [CKB-RFCs PR 230: Allow unknown tx & block version](nervosnetwork/rfcs#230

- feat(hardfork): allow script multiple matches on identical data for type hash-type scripts

  Ref: [CKB-RFCs PR 222: Allow script multiple matches on identical code](nervosnetwork/rfcs#222)

- feat(hardfork): reuse the uncles hash in the header as the extra hash

  Ref: [CKB-RFCs PR 224: Add a variable length field in the block header](nervosnetwork/rfcs#224)

- **[Reverted]** ~~feat(hardfork): allow loading uncommitted cell data hashes from tx pool~~

  ~~Ref: [CKB-RFCs PR 228: ckb2021: fix load_cell_data_hash syscall](nervosnetwork/rfcs#228

#### Other Important Commits

- feat(hardfork): setup the components for hard fork features

- refactor: let verifiers know the real environment that the transaction is in

  Almost all features require this refactor commit.

- refactor: remove useless parameter "with_data" because it always be true (tricky)

  So I can change less APIs and less code to apply the feature: allow loading uncommitted cell data hashes from tx pool.

### About Tests

Almost all features have detailed integration tests (or unit tests):
- Many blocks before hardfork;
- Only one block before hardfork;
- The block at hardfork;
- Many blocks after hardfork.

All commits can passed all integration tests and unit tests.

Co-authored-by: zhangsoledad <787953403@qq.com>
Co-authored-by: Boyu Yang <yangby@cryptape.com>
bors bot added a commit to nervosnetwork/ckb that referenced this pull request Jun 15, 2021
2715: feat(hardfork): ckb2021 hardfork features r=quake,doitian,zhangsoledad a=yangby-cryptape

### Suggestions for Review

**The best way to review this PR is reviewing each commit independently.**

### Brief introduction for Commits

#### New hardfork Features

**All following features can be found in RFC PRs.**

- feat(hardfork): in the "since epoch", the index should be less than length

  Ref: [CKB-RFCs PR 223: Ensure that index < length in input since field using epoch](nervosnetwork/rfcs#223)

- feat(hardfork): use block timestamp of input cells as relative since start timestamp

  Ref: [CKB-RFCs PR 221: Use Block Timestamp as Start Timestamp in Since](nervosnetwork/rfcs#221)

- **[Reverted]** ~~feat(hardfork): allow unknown block versions and transactions versions~~

  ~~Ref: [CKB-RFCs PR 230: Allow unknown tx & block version](nervosnetwork/rfcs#230

- feat(hardfork): allow script multiple matches on identical data for type hash-type scripts

  Ref: [CKB-RFCs PR 222: Allow script multiple matches on identical code](nervosnetwork/rfcs#222)

- feat(hardfork): reuse the uncles hash in the header as the extra hash

  Ref: [CKB-RFCs PR 224: Add a variable length field in the block header](nervosnetwork/rfcs#224)

- **[Reverted]** ~~feat(hardfork): allow loading uncommitted cell data hashes from tx pool~~

  ~~Ref: [CKB-RFCs PR 228: ckb2021: fix load_cell_data_hash syscall](nervosnetwork/rfcs#228

#### Other Important Commits

- feat(hardfork): setup the components for hard fork features

- refactor: let verifiers know the real environment that the transaction is in

  Almost all features require this refactor commit.

- refactor: remove useless parameter "with_data" because it always be true (tricky)

  So I can change less APIs and less code to apply the feature: allow loading uncommitted cell data hashes from tx pool.

### About Tests

Almost all features have detailed integration tests (or unit tests):
- Many blocks before hardfork;
- Only one block before hardfork;
- The block at hardfork;
- Many blocks after hardfork.

All commits can passed all integration tests and unit tests.

Co-authored-by: zhangsoledad <787953403@qq.com>
Co-authored-by: Boyu Yang <yangby@cryptape.com>
@doitian doitian added this to Draft in ckb2021 Jul 5, 2021
CKB - Pull Requests automation moved this from 🚧 In progress to 😴 Awaiting Review Jul 14, 2021
@doitian doitian moved this from Draft to In review in ckb2021 Jul 19, 2021
@doitian doitian changed the title RFC: Allow script multiple matches on identical code RFC222: Allow script multiple matches on identical code Jul 22, 2021
@doitian doitian force-pushed the allow-script-multiple-matches-on-identical-code branch from fd93c16 to e8a5661 Compare July 22, 2021 14:48
@doitian doitian changed the title RFC222: Allow script multiple matches on identical code RFC29: Allow script multiple matches on identical code Jul 23, 2021
@doitian doitian force-pushed the allow-script-multiple-matches-on-identical-code branch from e8a5661 to c239579 Compare July 23, 2021 07:24
@doitian doitian requested a review from janx July 23, 2021 07:26
@doitian doitian force-pushed the allow-script-multiple-matches-on-identical-code branch from db2f640 to 808be91 Compare July 23, 2021 07:33
@doitian doitian removed this from 😴 Awaiting Review in CKB - Pull Requests Jul 23, 2021
@doitian doitian changed the title RFC29: Allow script multiple matches on identical code RFC29: Allow multiple matches on dep cells via type script hash when these cells have the same data Jul 24, 2021
…-allow-script-multiple-matches-on-identical-code.md

Co-authored-by: Chengxing Yuan <yuanchengxing@hotmail.com>
yangby-cryptape
yangby-cryptape previously approved these changes Jan 4, 2022
@doitian
Copy link
Member Author

doitian commented Mar 4, 2022

Assigned reviewers: @xxuejie @quake

@doitian doitian requested review from xxuejie and janx March 4, 2022 02:11
ckb2021 automation moved this from In review to Final Comment Period Mar 14, 2022
@doitian doitian added the s:fcp Final Comment Period. PR is merged when there's no comments in 14 days. label Mar 14, 2022
@doitian
Copy link
Member Author

doitian commented Mar 18, 2022

FCP will end on 2022-03-28

@doitian doitian merged commit 60e0f38 into nervosnetwork:master Mar 31, 2022
ckb2021 automation moved this from Final Comment Period to Done Mar 31, 2022
@doitian doitian deleted the allow-script-multiple-matches-on-identical-code branch March 31, 2022 08:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
b:consensus Break consensus ckb2021 Hard fork scheduled in 2021 hard-fork s:fcp Final Comment Period. PR is merged when there's no comments in 14 days.
Projects
Development

Successfully merging this pull request may close these issues.

None yet

7 participants