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

zksync2 support #919

Closed
dcposch opened this issue Mar 12, 2022 · 5 comments
Closed

zksync2 support #919

dcposch opened this issue Mar 12, 2022 · 5 comments
Labels
C-forge Command: forge Cmd-forge-build Command: forge build Cmd-forge-create Command: forge create Cmd-forge-debug Command: forge run Cmd-forge-test Command: forge test D-hard Difficulty: hard P-low Priority: low T-feature Type: feature

Comments

@dcposch
Copy link
Contributor

dcposch commented Mar 12, 2022

Component

Forge

Describe the feature you would like

Support compiling for and deploying to zksync2.

Additional context

Zksync2 is, as far as I can tell, the first (mostly) EVM-compatible ZK rollup. They recently launched a public testnet.

Currently, their deployment pipeline only works with Hardhat. Details: https://v2-docs.zksync.io/dev/guide/hello-world.html#initializing-the-project-deploying-smart-contract

Obviously, I'd prefer to use Forge. I'm not sure what it would take. It looks like we'd have to support using a custom solc. Just opening this as a stub issue to track potential future zksync support.

@dcposch dcposch added the T-feature Type: feature label Mar 12, 2022
@mds1
Copy link
Collaborator

mds1 commented Mar 12, 2022

In addition to supporting a different compiler, we also need to account for differences in EVM semantics so tests behave as expected. There's an open issue to discuss the best approach for that here: #748

@onbjerg onbjerg added Cmd-forge-test Command: forge test C-forge Command: forge P-low Priority: low D-hard Difficulty: hard Cmd-forge-debug Command: forge run Cmd-forge-build Command: forge build Cmd-forge-create Command: forge create labels Mar 14, 2022
@onbjerg
Copy link
Member

onbjerg commented Mar 14, 2022

I think we need a classification or something for "tiers" of languages/VMs once we start supporting more of them, since we probably can't ship all Foundry features to all languages/backends and it is definitely going to be an iterative process.

The tier should indicate how well-supported the VM or language is. Perhaps a feature table would be nice too to indicate what Foundry features are supported for which languages/VMs. Bare minimum would be build/test (just unit tests, no traces)/deploy

@onbjerg onbjerg added this to Foundry Apr 17, 2022
@onbjerg onbjerg moved this to Todo in Foundry Apr 17, 2022
@daweth
Copy link

daweth commented Jul 6, 2023

How's this going? Has zkSync era support been added yet? @onbjerg

@Evalir
Copy link
Member

Evalir commented Jul 6, 2023

@daweth zksync has their own foundry fork: https://github.com/matter-labs/foundry-zksync

@mattsse
Copy link
Member

mattsse commented Apr 16, 2024

closing as dup of #7624

@mattsse mattsse closed this as completed Apr 16, 2024
@zerosnacks zerosnacks closed this as not planned Won't fix, can't repro, duplicate, stale Jul 15, 2024
@jenpaff jenpaff moved this from Todo to Completed in Foundry Sep 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-forge Command: forge Cmd-forge-build Command: forge build Cmd-forge-create Command: forge create Cmd-forge-debug Command: forge run Cmd-forge-test Command: forge test D-hard Difficulty: hard P-low Priority: low T-feature Type: feature
Projects
Archived in project
Development

No branches or pull requests

7 participants