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(vm): Extract oneshot VM executor interface #2671

Merged
merged 11 commits into from
Aug 27, 2024

Conversation

slowli
Copy link
Contributor

@slowli slowli commented Aug 16, 2024

What ❔

Extracts oneshot VM executor from the API server crate.

Why ❔

Simplifies reasoning about oneshot VM execution and its maintenance. Allows for alternative implementations.

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 zk fmt and zk lint.

Copy link
Contributor Author

@slowli slowli left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some general notes:

  • I don't think it would be reasonable to attempt uniting OneshotExecutor and BatchExecutor; IMO, they have sufficiently distinct semantics to be kept as separate traits.
  • I have left OneshotExecutor in the API server crate for now in order to keep PR scope reasonable. It may make sense to put OneshotExecutor / BatchExecutor implementations in a separate crate (which would also contain vm_utils code), maybe vm_executor. The OneshotExecutor / BatchExecutor traits could be put there or in vm_interface.

@slowli slowli marked this pull request as ready for review August 19, 2024 08:52
@slowli slowli requested review from popzxc, perekopskiy, RomanBrodetski, Deniallugo and StanislavBreadless and removed request for popzxc August 19, 2024 08:52
@slowli slowli added this pull request to the merge queue Aug 27, 2024
Merged via the queue into main with commit 951d5f2 Aug 27, 2024
49 checks passed
@slowli slowli deleted the aov-pla-1018-extract-oneshot-vm-executor-interface branch August 27, 2024 10:21
github-merge-queue bot pushed a commit that referenced this pull request Aug 27, 2024
🤖 I have created a release *beep* *boop*
---


##
[24.22.0](core-v24.21.0...core-v24.22.0)
(2024-08-27)


### Features

* add flag to enable/disable DA inclusion verification
([#2647](#2647))
([b425561](b425561))
* **Base token:** add cbt metrics
([#2720](#2720))
([58438eb](58438eb))
* Change default_protective_reads_persistence_enabled to false
([#2716](#2716))
([8d0eee7](8d0eee7))
* **vm:** Extract oneshot VM executor interface
([#2671](#2671))
([951d5f2](951d5f2))
* **zk_toolbox:** Add holesky testnet as layer1 network
([#2632](#2632))
([d9266e5](d9266e5))


### Bug Fixes

* **api:** `tx.gas_price` field
([#2734](#2734))
([aea3726](aea3726))
* **base_token_adjuster:** bug with a wrong metrics namespace
([#2744](#2744))
([64b2ff8](64b2ff8))
* **eth-sender:** missing Gateway migration changes
([#2732](#2732))
([a4170e9](a4170e9))
* **proof_data_handler:** TEE blob fetching error handling
([#2674](#2674))
([c162510](c162510))

---
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.

2 participants