Skip to content
This repository has been archived by the owner on Jul 5, 2024. It is now read-only.

Towards Shanghai Upgrade #1362

Open
lispc opened this issue Apr 16, 2023 · 3 comments
Open

Towards Shanghai Upgrade #1362

lispc opened this issue Apr 16, 2023 · 3 comments
Labels
T-feature Type: new features

Comments

@lispc
Copy link
Collaborator

lispc commented Apr 16, 2023

Describe the feature you would like

I list the steps to do:

  1. change golang tracer to latest geth Update geth dependency from v1.10.18 to v1.11.5 #1363
  2. change some opcodes implementation: initcode gas change & prevrandao
  3. add new opcodes like push0 Introduce support for PUSH0 #1361
  4. change submodule revision inside testool

anything missing?

It may be an "atomic" change, we can only choose fork like london vs shanghai, it is difficult & meaningless to make our circuit behavior as london + push0.

Additional context

No response

@lispc lispc added the T-feature Type: new features label Apr 16, 2023
ed255 pushed a commit that referenced this issue Apr 18, 2023
### Description

Updates the geth dependency in geth-utils to latest release.

Pulled this out from #1361.

### Issue Link

Related to #1362.

### Type of change

- [ ] Bug fix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- [ ] This change requires a documentation update

### Contents

- Update geth dependency (and ran `go mod tidy` to update
sub-dependencies)
- Update code bindings to struct changes

### Rationale

N/A

### How Has This Been Tested?

Using the testing suite in the repo.
@lispc
Copy link
Collaborator Author

lispc commented Apr 21, 2023

another remainder is that we need to support prevrandao opcode (renamed from DIFFICULTY). I make this change https://github.com/scroll-tech/zkevm-circuits/blob/1ea9b5970ff873191de29e625687765f427326dd/bus-mapping/src/circuit_input_builder/block.rs#L119-L127 to be compatible with latest node/libs.

ed255 pushed a commit that referenced this issue Jun 2, 2023
…es (#1424)

### Description

1. Add Shanghai related fields to chain config in geth-utils.

2. EIP-3651 (Warm COINBASE): add a new access-list write for coinbase to
Begin TX.

3. Part of EIP-3860 (Limit and meter initcode): only add gas cost of
init code to Begin TX (missing gas cost changes in Create and OOG
Create).

### Issue Link

Issue
#1362

Local related PRs:
scroll-tech#497
scroll-tech#500
scroll-tech#507

Reference previous PR:
#1361

### Type of change

- [x] Breaking change (fix or feature that would cause existing
functionality to not work as expected)

### How Has This Been Tested?

Unit test cases of CI could pass with Shanghai geth traces.

---------

Co-authored-by: Zhang Zhuo <mycinbrin@gmail.com>
@ChihChengLiang ChihChengLiang changed the title discussion: towards shanghai fork Towards Shanghai Upgrade Jul 5, 2023
@ChihChengLiang ChihChengLiang pinned this issue Jul 5, 2023
@KimiWu123 KimiWu123 added this to the Feature Completeness milestone Jul 7, 2023
@ChihChengLiang ChihChengLiang unpinned this issue Jul 28, 2023
@ChihChengLiang
Copy link
Collaborator

We have to update the version of Ethereum tests. @adria0 will file an issue for it.

johntaiko pushed a commit to johntaiko/zkevm-circuits that referenced this issue Aug 20, 2023
…es (privacy-scaling-explorations#1424)

1. Add Shanghai related fields to chain config in geth-utils.

2. EIP-3651 (Warm COINBASE): add a new access-list write for coinbase to
Begin TX.

3. Part of EIP-3860 (Limit and meter initcode): only add gas cost of
init code to Begin TX (missing gas cost changes in Create and OOG
Create).

Issue
privacy-scaling-explorations#1362

Local related PRs:
scroll-tech#497
scroll-tech#500
scroll-tech#507

Reference previous PR:
privacy-scaling-explorations#1361

- [x] Breaking change (fix or feature that would cause existing
functionality to not work as expected)

Unit test cases of CI could pass with Shanghai geth traces.

---------

Co-authored-by: Zhang Zhuo <mycinbrin@gmail.com>
johntaiko pushed a commit to johntaiko/zkevm-circuits that referenced this issue Aug 20, 2023
…es (privacy-scaling-explorations#1424)

1. Add Shanghai related fields to chain config in geth-utils.

2. EIP-3651 (Warm COINBASE): add a new access-list write for coinbase to
Begin TX.

3. Part of EIP-3860 (Limit and meter initcode): only add gas cost of
init code to Begin TX (missing gas cost changes in Create and OOG
Create).

Issue
privacy-scaling-explorations#1362

Local related PRs:
scroll-tech#497
scroll-tech#500
scroll-tech#507

Reference previous PR:
privacy-scaling-explorations#1361

- [x] Breaking change (fix or feature that would cause existing
functionality to not work as expected)

Unit test cases of CI could pass with Shanghai geth traces.

---------

Co-authored-by: Zhang Zhuo <mycinbrin@gmail.com>
johntaiko pushed a commit to johntaiko/zkevm-circuits that referenced this issue Aug 20, 2023
…es (privacy-scaling-explorations#1424)

1. Add Shanghai related fields to chain config in geth-utils.

2. EIP-3651 (Warm COINBASE): add a new access-list write for coinbase to
Begin TX.

3. Part of EIP-3860 (Limit and meter initcode): only add gas cost of
init code to Begin TX (missing gas cost changes in Create and OOG
Create).

Issue
privacy-scaling-explorations#1362

Local related PRs:
scroll-tech#497
scroll-tech#500
scroll-tech#507

Reference previous PR:
privacy-scaling-explorations#1361

- [x] Breaking change (fix or feature that would cause existing
functionality to not work as expected)

Unit test cases of CI could pass with Shanghai geth traces.

---------

Co-authored-by: Zhang Zhuo <mycinbrin@gmail.com>
johntaiko pushed a commit to johntaiko/zkevm-circuits that referenced this issue Aug 20, 2023
…es (privacy-scaling-explorations#1424)

1. Add Shanghai related fields to chain config in geth-utils.

2. EIP-3651 (Warm COINBASE): add a new access-list write for coinbase to
Begin TX.

3. Part of EIP-3860 (Limit and meter initcode): only add gas cost of
init code to Begin TX (missing gas cost changes in Create and OOG
Create).

Issue
privacy-scaling-explorations#1362

Local related PRs:
scroll-tech#497
scroll-tech#500
scroll-tech#507

Reference previous PR:
privacy-scaling-explorations#1361

- [x] Breaking change (fix or feature that would cause existing
functionality to not work as expected)

Unit test cases of CI could pass with Shanghai geth traces.

---------

Co-authored-by: Zhang Zhuo <mycinbrin@gmail.com>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
T-feature Type: new features
Projects
Status: Milestone Tasks
Development

No branches or pull requests

3 participants