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(consume): add support to consume direct for eof_test fixtures #1232

Open
7 tasks
marioevz opened this issue Feb 19, 2025 · 1 comment
Open
7 tasks

feat(consume): add support to consume direct for eof_test fixtures #1232

marioevz opened this issue Feb 19, 2025 · 1 comment
Assignees
Labels
scope:consume Scope: Consume command suite type:feat type: Feature

Comments

@marioevz
Copy link
Member

marioevz commented Feb 19, 2025

Command consume direct should support EOF fixtures, since tools like evmone-eofparse allow consumption of EOF containers.

The command technically already supports EOF fixtures with the merging of #935, but currently there is no fixture-consumer class defined to process EOF fixtures.

The only thing required is to create a FixtureConsumerTool subclass that contains the logic to process the fixtures using the evmone-eofparse external tool, like the one defined for Geth's evm tool here:

class GethFixtureConsumer(
GethEvm,
FixtureConsumerTool,
fixture_formats=[StateFixture, BlockchainFixture],
):
"""Geth's implementation of the fixture consumer."""

During consume direct execution, this new class would receive the EOF fixture path in this endpoint:

def consume_fixture(
self,
fixture_format: FixtureFormat,
fixture_path: Path,
fixture_name: Optional[str] = None,
debug_output_path: Optional[Path] = None,
):

The main difference between Geth's class and evmone's class is that evmone-eofparse is a different binary than the one used in the transition tool (evmnone-t8n).

This comment describes partially what this entails:

https://github.com/ethereum/execution-spec-tests/pull/935/files#r1907541619

Tasks

@danceratopz
Copy link
Member

danceratopz commented Feb 20, 2025

EOF container verification binaries:

client branch binary/command
geth danno: osaka-mega-eof, geth: master build/bin/evm eofparse

@danceratopz danceratopz self-assigned this Feb 20, 2025
@danceratopz danceratopz added type:feat type: Feature scope:consume Scope: Consume command suite labels Feb 21, 2025
@danceratopz danceratopz changed the title consume: Add support to consume direct for EOF test fixtures feat(consume): add support to consume direct for eof_test fixtures Feb 21, 2025
felix314159 added a commit to felix314159/execution-spec-tests that referenced this issue Feb 24, 2025
felix314159 added a commit to felix314159/execution-spec-tests that referenced this issue Feb 24, 2025
felix314159 added a commit to felix314159/execution-spec-tests that referenced this issue Feb 24, 2025
felix314159 added a commit to felix314159/execution-spec-tests that referenced this issue Feb 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
scope:consume Scope: Consume command suite type:feat type: Feature
Projects
None yet
Development

No branches or pull requests

3 participants