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: Allow customizing precompiles logic #79

Merged
merged 4 commits into from
Jan 21, 2025

Conversation

slowli
Copy link
Contributor

@slowli slowli commented Jan 20, 2025

What ❔

Allows customizing the precompiles logic by extending the World trait.

Why ❔

  • Allows caching ecrecover calls (= signature verification) with the default account abstraction.
  • Precompiles is the only entry point for crypto backends, so this allows theoretically customizing a backend (not implemented in this PR).

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 cargo fmt and cargo clippy.

@slowli slowli requested a review from joonazan as a code owner January 20, 2025 09:40
@slowli slowli force-pushed the aov-pla-1082-allow-caching-signature-verification branch from 587650b to 6f03072 Compare January 20, 2025 09:58
joonazan
joonazan previously approved these changes Jan 20, 2025
Copy link
Contributor

@joonazan joonazan left a comment

Choose a reason for hiding this comment

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

This is a very good idea! I found integrating the precompiles directly somewhat dirty.

@slowli slowli enabled auto-merge (squash) January 21, 2025 10:11
@slowli slowli requested a review from joonazan January 21, 2025 10:11
@slowli slowli merged commit 3841f5a into master Jan 21, 2025
8 checks passed
@slowli slowli deleted the aov-pla-1082-allow-caching-signature-verification branch January 21, 2025 11:03
joonazan pushed a commit that referenced this pull request Jan 29, 2025
🤖 I have created a release *beep* *boop*
---


## [0.3.0](v0.2.1...v0.3.0)
(2025-01-27)


### ⚠ BREAKING CHANGES

* Remove EVM emulator gas stipend
([#82](#82))
* Revise VM storage interface
([#73](#73))

### Features

* Allow customizing precompiles logic
([#79](#79))
([3841f5a](3841f5a))
* allow tracers to stop/suspend execution
([#78](#78))
([457d8a7](457d8a7))
* expose storage to tracers
([#77](#77))
([df5bec3](df5bec3))


### Bug Fixes

* **ci:** Update github-hosted runner label
([#80](#80))
([70a6e30](70a6e30))
* failing far call tracing
([#81](#81))
([5df8c33](5df8c33))
* Remove EVM emulator gas stipend
([#82](#82))
([bf63339](bf63339))
* Revise VM storage interface
([#73](#73))
([a233d44](a233d44))

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