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

feat(contract-verifier): Support Vyper toolchain for EVM bytecodes #3251

Merged
merged 9 commits into from
Nov 12, 2024

Conversation

slowli
Copy link
Contributor

@slowli slowli commented Nov 11, 2024

What ❔

  • Supports the Vyper toolchain for EVM bytecodes in the contract verifier.
  • Adds some more unit tests for the verifier (e.g., testing multi-file inputs, Yul contracts, abstract contract errors etc.).

Why ❔

Part of preparations to support EVM bytecodes throughout the codebase.

Checklist

  • PR title corresponds to the body of PR (we generate changelog entries from PRs).
  • Tests for the changes have been added / updated.
  • Documentation comments have been added / updated.
  • Code has been formatted via zkstack dev fmt and zkstack dev lint.

@slowli slowli marked this pull request as ready for review November 11, 2024 18:34
popzxc
popzxc previously approved these changes Nov 12, 2024
core/lib/contract_verifier/src/compilers/mod.rs Outdated Show resolved Hide resolved
core/lib/contract_verifier/src/compilers/vyper.rs Outdated Show resolved Hide resolved
@slowli slowli added this pull request to the merge queue Nov 12, 2024
Merged via the queue into main with commit 75f7db9 Nov 12, 2024
33 checks passed
@slowli slowli deleted the aov-evm-864-support-vyper-toolchain-for-evm-bytecodes branch November 12, 2024 10:33
github-merge-queue bot pushed a commit that referenced this pull request Nov 19, 2024
🤖 I have created a release *beep* *boop*
---


##
[25.2.0](core-v25.1.0...core-v25.2.0)
(2024-11-19)


### Features

* add more metrics for the tee_prover
([#3276](#3276))
([8b62434](8b62434))
* **api-server:** add `yParity` for non-legacy txs
([#3246](#3246))
([6ea36d1](6ea36d1))
* **consensus:** fallback json rpc syncing for consensus
([#3211](#3211))
([726203b](726203b))
* **contract-verifier:** Adapt contract verifier API for EVM bytecodes
([#3234](#3234))
([4509179](4509179))
* **contract-verifier:** Support Solidity contracts with EVM bytecode in
contract verifier
([#3225](#3225))
([8a3a82c](8a3a82c))
* **contract-verifier:** Support Vyper toolchain for EVM bytecodes
([#3251](#3251))
([75f7db9](75f7db9))
* **en:** Support Merkle tree recovery with pruning enabled
([#3172](#3172))
([7b8640a](7b8640a))
* ProverJobProcessor & circuit prover
([#3287](#3287))
([98823f9](98823f9))
* **prover:** Move prover_autoscaler config into crate
([#3222](#3222))
([1b33b5e](1b33b5e))
* **vm_executor:** Add new histogram metric for gas per tx in
vm_executor
([#3215](#3215))
([3606fc1](3606fc1))
* **vm:** add gateway changes to fast vm
([#3236](#3236))
([f3a2517](f3a2517))


### Bug Fixes

* **merkle-tree:** Repair stale keys for tree in background
([#3200](#3200))
([363b4f0](363b4f0))
* **tracer:** Add error to flat tracer
([#3306](#3306))
([7c93c47](7c93c47))
* use_dummy_inclusion_data condition
([#3244](#3244))
([6e3c36e](6e3c36e))
* **vm:** Do not require experimental VM config
([#3270](#3270))
([54e4b00](54e4b00))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Co-authored-by: zksync-era-bot <[email protected]>
Deniallugo pushed a commit that referenced this pull request Nov 21, 2024
🤖 I have created a release *beep* *boop*
---


##
[25.2.0](core-v25.1.0...core-v25.2.0)
(2024-11-19)


### Features

* add more metrics for the tee_prover
([#3276](#3276))
([8b62434](8b62434))
* **api-server:** add `yParity` for non-legacy txs
([#3246](#3246))
([6ea36d1](6ea36d1))
* **consensus:** fallback json rpc syncing for consensus
([#3211](#3211))
([726203b](726203b))
* **contract-verifier:** Adapt contract verifier API for EVM bytecodes
([#3234](#3234))
([4509179](4509179))
* **contract-verifier:** Support Solidity contracts with EVM bytecode in
contract verifier
([#3225](#3225))
([8a3a82c](8a3a82c))
* **contract-verifier:** Support Vyper toolchain for EVM bytecodes
([#3251](#3251))
([75f7db9](75f7db9))
* **en:** Support Merkle tree recovery with pruning enabled
([#3172](#3172))
([7b8640a](7b8640a))
* ProverJobProcessor & circuit prover
([#3287](#3287))
([98823f9](98823f9))
* **prover:** Move prover_autoscaler config into crate
([#3222](#3222))
([1b33b5e](1b33b5e))
* **vm_executor:** Add new histogram metric for gas per tx in
vm_executor
([#3215](#3215))
([3606fc1](3606fc1))
* **vm:** add gateway changes to fast vm
([#3236](#3236))
([f3a2517](f3a2517))


### Bug Fixes

* **merkle-tree:** Repair stale keys for tree in background
([#3200](#3200))
([363b4f0](363b4f0))
* **tracer:** Add error to flat tracer
([#3306](#3306))
([7c93c47](7c93c47))
* use_dummy_inclusion_data condition
([#3244](#3244))
([6e3c36e](6e3c36e))
* **vm:** Do not require experimental VM config
([#3270](#3270))
([54e4b00](54e4b00))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Co-authored-by: zksync-era-bot <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants