Skip to content

Commit 5687c86

Browse files
jsignspencer-tb
andcommitted
feat(tests|fw): verkle genesis test-vectors (#659)
* osaka folder Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: init Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: add 6800 transfer test * whitelist: add verkle related keywords Signed-off-by: Ignacio Hagopian <[email protected]> * osaka: add verkle helpers Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: fix tests Signed-off-by: Ignacio Hagopian <[email protected]> * whitelist: add more keywords Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/vkt: add contract creation test and more vkt_* helpers Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 init Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: eip4762 transfer witness checks Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 add simpel contract exec witness test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: fix comments Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: set that conversion ended Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: t8n limitations adjustements Co-authored-by: spencer <[email protected]> * osaka/verkle: more adjustements Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-6800 storage slot writes Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-6800 code chunking tests Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 generalize eth transfer test and include tx failing case Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: rely on fork to configure verkle genesis tests Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 add *CALL tests Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 add *CALL insufficient gas for dynamic cost tests Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 add *CALL revert tests Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 add *CALL warm cost tests Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 add EXTCODESIZE normal test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 add EXTCODESIZE warm test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 add CODECOPY basic test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 add CODECOPY in initcode test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 add CODECOPY with insufficient gas test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 support EXTCODECOPY in existing CODECOPY test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 support EXTCODECOPY in existing CODECOPY initcode test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 file renamings Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 support EXTCODECOPY in existing CODECOPY insufficient gas test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 support CODECOPY & EXTCODECOPY WARM test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 support EXTCODECOPY precompile test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 fix Initcode missing .bytecode Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 support *CREATE witness test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 support *CREATE with insufficient dynamig gas cases test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 support *CREATE with address collision test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 support BALANCE witness test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 support BALANCE insufficient dynamig gas test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 support BALANCE warm test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 support SELFDESTRUCT test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 support SELFDESTRUCT insufficient gas test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 support EXTCODEHASH test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 support SLOAD test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 support SLOAD with insufficient gas test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 support SSTORE test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 support SSTORE with insufficient gas test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 support withdrawals test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 support coinbase test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 more code execution tests Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 more code execution tests Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 *CALL insufficient gas for 63/64 tests Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 CREATE* insufficient gas for 63/64 tests Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 CREATE* calldata bigger than returned code test Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: redesign witness helpers Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 contract execution with new witness helpers Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 BALANCE improvements Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: witness helper support None witness values Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 *CALL improvements Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 coinbase rewards improvements Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 code execution improvements Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 tx creation and *CREATE improvements Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 EXTCODEHASH improvements Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 EXTCODESIZE improvements Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 *CODECOPY improvements Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 SELFDESTRUCT improvements Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 SLOAD improvements Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 SSTORE improvements Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 tx events improvements Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-4762 withdrawals improvements Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-7709 init Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-7709 BLOCKHASH tests Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: EIP-7709 filling file Signed-off-by: Ignacio Hagopian <[email protected]> * osaka: fixes Signed-off-by: Ignacio Hagopian <[email protected]> * osaka/verkle: fix balance value Signed-off-by: Ignacio Hagopian <[email protected]> * rebase Signed-off-by: Ignacio Hagopian <[email protected]> * verkle: comment test with failing compilation Signed-off-by: Ignacio Hagopian <[email protected]> * verkle: fix fork naming Signed-off-by: Ignacio Hagopian <[email protected]> * fix(fw): fill verkle genesis with input vkt & env conv ended. * verkle/6800: fix test Signed-off-by: Ignacio Hagopian <[email protected]> * verkle/6800: fix test Signed-off-by: Ignacio Hagopian <[email protected]> * feat(fw): add verkle state root geth t8n sub-command. * feat(fw): add verkle state root sub-command. * feat(fw): fix genesis state root for conversion tests. * verkle: fix precompile address to avoid requiring valid calldata Signed-off-by: Ignacio Hagopian <[email protected]> * verkle: initcode fixes Signed-off-by: Ignacio Hagopian <[email protected]> * verkle: fix tests naming Signed-off-by: Ignacio Hagopian <[email protected]> * feat(fw): add pre alloc to t8n input alongside vkt. * verkle: fix balance tests Signed-off-by: Ignacio Hagopian <[email protected]> * verkle: fixes Signed-off-by: Ignacio Hagopian <[email protected]> * feat(fw): create verkle types. * chore: typo. * wip(fw): add the witness to fixture from t8n output result. * fix(fw): witness in fixtures from t8n output result. * fix(fw): add basic test for witness model. * fix(fw): fix tests for witness model. * adjustement for filling Signed-off-by: Ignacio Hagopian <[email protected]> * verkle: fix sstore test Signed-off-by: Ignacio Hagopian <[email protected]> * verkle: fixes Signed-off-by: Ignacio Hagopian <[email protected]> * feat: add release configs for genesis & conv tests. --------- Signed-off-by: Ignacio Hagopian <[email protected]> Co-authored-by: spencer <[email protected]> Co-authored-by: Spencer Taylor-Brown <[email protected]>
1 parent 9cf45b4 commit 5687c86

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+3543
-41
lines changed

configs/evm.yaml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,9 @@ eip7692:
1212
impl: evmone
1313
repo: ethereum/evmone
1414
ref: master
15-
evm-bin: evmone-t8n
15+
evm-bin: evmone-t8n
16+
verkle:
17+
impl: geth
18+
repo: gballet/go-ethereum
19+
ref: jsign-t8n-verkle-genesis-rebased
20+
evm-bin: evm

configs/feature.yaml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,12 @@ develop:
99
eip7692:
1010
evm-type: eip7692
1111
fill-params: --fork=CancunEIP7692 ./tests/prague
12-
solc: 0.8.21
12+
solc: 0.8.21
13+
verkle-genesis:
14+
evm-type: verkle
15+
fill-params: --fork=Verkle -m blockchain_test
16+
solc: 0.8.24
17+
verkle-conversion-stride-0:
18+
evm-type: verkle
19+
fill-params: --fork=EIP6800Transition -m blockchain_test
20+
solc: 0.8.24

src/ethereum_test_base_types/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
HexNumber,
1616
Number,
1717
NumberBoundTypeVar,
18+
PaddedFixedSizeBytes,
1819
ZeroPaddedHexNumber,
1920
)
2021
from .composite_types import Account, Alloc, Storage, StorageRootType
@@ -53,6 +54,7 @@
5354
"HexNumber",
5455
"Number",
5556
"NumberBoundTypeVar",
57+
"PaddedFixedSizeBytes",
5658
"ReferenceSpec",
5759
"Storage",
5860
"StorageRootType",

src/ethereum_test_base_types/base_types.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -276,6 +276,21 @@ def __ne__(self, other: object) -> bool:
276276
return not self.__eq__(other)
277277

278278

279+
class PaddedFixedSizeBytes(FixedSizeBytes):
280+
"""
281+
Class that represents fixed-size bytes with padded hex output.
282+
"""
283+
284+
def hex(self, *args, **kwargs) -> str:
285+
"""
286+
Returns the hexadecimal representation of the bytes with padding.
287+
"""
288+
hex_str = super().hex(*args, **kwargs)[2:]
289+
if len(hex_str) % 2 != 0:
290+
hex_str = "0" + hex_str
291+
return "0x" + hex_str.zfill(self.byte_length * 2)
292+
293+
279294
class Address(FixedSizeBytes[20]): # type: ignore
280295
"""
281296
Class that helps represent Ethereum addresses in tests.

src/ethereum_test_base_types/pydantic.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
"""
22
Base pydantic classes used to define the models for Ethereum tests.
33
"""
4+
45
from typing import TypeVar
56

67
from pydantic import BaseModel, ConfigDict

src/ethereum_test_fixtures/blockchain.py

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@
4040
WithdrawalRequest,
4141
WithdrawalRequestGeneric,
4242
)
43+
from ethereum_test_types.verkle import Witness
4344

4445
from .base import BaseFixture
4546
from .formats import FixtureFormats
@@ -412,6 +413,19 @@ def from_consolidation_request(
412413
return cls(**d.model_dump())
413414

414415

416+
class FixtureWitness(Witness):
417+
"""
418+
Structure to represent a single verkle block witness.
419+
"""
420+
421+
@classmethod
422+
def from_witness(cls, w: Witness) -> "FixtureWitness":
423+
"""
424+
Returns a FixtureWitness from a Witness.
425+
"""
426+
return cls(**w.model_dump())
427+
428+
415429
class FixtureBlockBase(CamelModel):
416430
"""Representation of an Ethereum block within a test Fixture without RLP bytes."""
417431

@@ -423,6 +437,8 @@ class FixtureBlockBase(CamelModel):
423437
withdrawal_requests: List[FixtureWithdrawalRequest] | None = None
424438
consolidation_requests: List[FixtureConsolidationRequest] | None = None
425439

440+
witness: FixtureWitness | None = None
441+
426442
@computed_field(alias="blocknumber") # type: ignore[misc]
427443
@cached_property
428444
def block_number(self) -> Number:

src/ethereum_test_specs/base.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@
1414
from ethereum_test_base_types import to_hex
1515
from ethereum_test_fixtures import BaseFixture, FixtureFormats
1616
from ethereum_test_forks import Fork
17-
from ethereum_test_types import Alloc, Environment, Transaction, VerkleTree, Withdrawal
17+
from ethereum_test_types import Alloc, Environment, Transaction, Withdrawal
18+
from ethereum_test_types.verkle import VerkleTree
1819
from evm_transition_tool import Result, TransitionTool
1920

2021

src/ethereum_test_specs/blockchain.py

Lines changed: 46 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
HeaderNonce,
1919
HexNumber,
2020
Number,
21-
to_json,
2221
)
2322
from ethereum_test_exceptions import BlockException, EngineAPIError, TransactionException
2423
from ethereum_test_fixtures import BaseFixture, FixtureFormats
@@ -34,6 +33,7 @@
3433
FixtureTransaction,
3534
FixtureWithdrawal,
3635
FixtureWithdrawalRequest,
36+
FixtureWitness,
3737
InvalidFixtureBlock,
3838
)
3939
from ethereum_test_forks import EIP6800Transition, Fork, Verkle
@@ -45,10 +45,10 @@
4545
Removable,
4646
Requests,
4747
Transaction,
48-
VerkleTree,
4948
Withdrawal,
5049
WithdrawalRequest,
5150
)
51+
from ethereum_test_types.verkle import VerkleTree, Witness
5252
from evm_transition_tool import TransitionTool
5353

5454
from .base import BaseTest, verify_result, verify_transactions
@@ -328,6 +328,7 @@ class BlockchainTest(BaseTest):
328328
def make_genesis(
329329
self,
330330
fork: Fork,
331+
t8n: TransitionTool,
331332
) -> Tuple[Alloc, FixtureBlock]:
332333
"""
333334
Create a genesis block from the blockchain test definition.
@@ -346,7 +347,14 @@ def make_genesis(
346347
)
347348
if empty_accounts := pre_alloc.empty_accounts():
348349
raise Exception(f"Empty accounts in pre state: {empty_accounts}")
349-
state_root = pre_alloc.state_root()
350+
351+
state_root: bytes
352+
# TODO: refine, currently uses `evm verkle state-root` to get this.
353+
if fork < Verkle or fork is EIP6800Transition:
354+
state_root = pre_alloc.state_root()
355+
else:
356+
state_root = t8n.get_verkle_state_root(mpt_alloc=pre_alloc)
357+
350358
genesis = FixtureHeader(
351359
parent_hash=0,
352360
ommers_hash=EmptyOmmersRoot,
@@ -404,6 +412,7 @@ def generate_block_data(
404412
Alloc,
405413
Optional[Requests],
406414
Optional[VerkleTree],
415+
Optional[Witness],
407416
]:
408417
"""
409418
Generate common block data for both make_fixture and make_hive_fixture.
@@ -436,7 +445,7 @@ def generate_block_data(
436445
txs=txs,
437446
env=env,
438447
fork=fork,
439-
vkt=to_json(previous_vkt) if previous_vkt is not None else None,
448+
vkt=previous_vkt,
440449
chain_id=self.chain_id,
441450
reward=fork.get_reward(env.number, env.timestamp),
442451
eips=eips,
@@ -446,13 +455,17 @@ def generate_block_data(
446455
try:
447456
rejected_txs = verify_transactions(txs, transition_tool_output.result)
448457
verify_result(transition_tool_output.result, env)
458+
# TODO: add verify witness (against vkt)
459+
# verify_witness(transition_tool_output.witness, transition_tool_output.vkt)
449460
except Exception as e:
450461
print_traces(t8n.get_traces())
451462
pprint(transition_tool_output.result)
452463
pprint(previous_alloc)
453464
pprint(transition_tool_output.alloc)
454465
if transition_tool_output.vkt is not None:
455466
pprint(transition_tool_output.vkt)
467+
if transition_tool_output.witness is not None:
468+
pprint(transition_tool_output.witness)
456469
raise e
457470

458471
if len(rejected_txs) > 0 and block.exception is None:
@@ -525,6 +538,11 @@ def generate_block_data(
525538
)
526539
)
527540
transition_tool_output.alloc = previous_alloc
541+
# TODO: hack for now
542+
transition_tool_output.witness = Witness(
543+
verkle_proof=transition_tool_output.result.verkle_proof,
544+
state_diff=transition_tool_output.result.state_diff,
545+
)
528546

529547
return (
530548
env,
@@ -533,6 +551,7 @@ def generate_block_data(
533551
transition_tool_output.alloc,
534552
requests,
535553
transition_tool_output.vkt,
554+
transition_tool_output.witness,
536555
)
537556

538557
def network_info(self, fork: Fork, eips: Optional[List[int]] = None):
@@ -556,7 +575,7 @@ def verify_post_state(
556575
Verifies the post state after all block/s or payload/s are generated.
557576
"""
558577
try:
559-
if env.verkle_conversion_started:
578+
if env.verkle_conversion_started or env.verkle_conversion_ended:
560579
if vkt is not None:
561580
pass # TODO: skip exact account verify checks
562581
# verify_post_vkt(t8n=t8n, expected_post=self.post, got_vkt=vkt)
@@ -579,13 +598,19 @@ def make_fixture(
579598
"""
580599
fixture_blocks: List[FixtureBlock | InvalidFixtureBlock] = []
581600

582-
pre, genesis = self.make_genesis(fork)
601+
pre, genesis = self.make_genesis(fork, t8n)
583602

584603
alloc = pre
585604
env = environment_from_parent_header(genesis.header)
586605
head = genesis.header.block_hash
587606
vkt: Optional[VerkleTree] = None
588607

608+
# Filling for verkle genesis tests
609+
if fork is Verkle:
610+
env.verkle_conversion_ended = True
611+
# convert alloc to vkt
612+
vkt = t8n.from_mpt_to_vkt(alloc)
613+
589614
# Hack for filling naive verkle transition tests
590615
if fork is EIP6800Transition:
591616
# Add a dummy block before the fork transition
@@ -603,14 +628,16 @@ def make_fixture(
603628
# This is the most common case, the RLP needs to be constructed
604629
# based on the transactions to be included in the block.
605630
# Set the environment according to the block to execute.
606-
new_env, header, txs, new_alloc, requests, new_vkt = self.generate_block_data(
607-
t8n=t8n,
608-
fork=fork,
609-
block=block,
610-
previous_env=env,
611-
previous_alloc=alloc,
612-
previous_vkt=vkt,
613-
eips=eips,
631+
new_env, header, txs, new_alloc, requests, new_vkt, witness = (
632+
self.generate_block_data(
633+
t8n=t8n,
634+
fork=fork,
635+
block=block,
636+
previous_env=env,
637+
previous_alloc=alloc,
638+
previous_vkt=vkt,
639+
eips=eips,
640+
)
614641
)
615642
fixture_block = FixtureBlockBase(
616643
header=header,
@@ -645,6 +672,7 @@ def make_fixture(
645672
if requests is not None
646673
else None
647674
),
675+
witness=FixtureWitness.from_witness(witness) if witness is not None else None,
648676
).with_rlp(txs=txs, requests=requests)
649677
if block.exception is None:
650678
fixture_blocks.append(fixture_block)
@@ -699,7 +727,7 @@ def make_hive_fixture(
699727
"""
700728
fixture_payloads: List[FixtureEngineNewPayload] = []
701729

702-
pre, genesis = self.make_genesis(fork)
730+
pre, genesis = self.make_genesis(fork, t8n)
703731
alloc = pre
704732
env = environment_from_parent_header(genesis.header)
705733
head_hash = genesis.header.block_hash
@@ -718,7 +746,8 @@ def make_hive_fixture(
718746
self.blocks.append(Block())
719747

720748
for block in self.blocks:
721-
new_env, header, txs, new_alloc, requests, new_vkt = self.generate_block_data(
749+
# TODO: fix witness for hive fixture? Do we need it?
750+
new_env, header, txs, new_alloc, requests, new_vkt, _ = self.generate_block_data(
722751
t8n=t8n,
723752
fork=fork,
724753
block=block,
@@ -762,7 +791,7 @@ def make_hive_fixture(
762791
# Most clients require the header to start the sync process, so we create an empty
763792
# block on top of the last block of the test to send it as new payload and trigger the
764793
# sync process.
765-
_, sync_header, _, _, requests, _ = self.generate_block_data(
794+
_, sync_header, _, _, requests, _, _ = self.generate_block_data(
766795
t8n=t8n,
767796
fork=fork,
768797
block=Block(),

src/ethereum_test_tools/__init__.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,6 @@
4545
Storage,
4646
TestParameterGroup,
4747
Transaction,
48-
VerkleTree,
4948
Withdrawal,
5049
WithdrawalRequest,
5150
add_kzg_version,
@@ -136,7 +135,6 @@
136135
"TransactionException",
137136
"Withdrawal",
138137
"WithdrawalRequest",
139-
"VerkleTree",
140138
"Yul",
141139
"YulCompiler",
142140
"add_kzg_version",

src/ethereum_test_types/__init__.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
Requests,
2828
Storage,
2929
Transaction,
30-
VerkleTree,
3130
Withdrawal,
3231
WithdrawalRequest,
3332
)
@@ -54,7 +53,6 @@
5453
"TestPrivateKey",
5554
"TestPrivateKey2",
5655
"Transaction",
57-
"VerkleTree",
5856
"Withdrawal",
5957
"WithdrawalRequest",
6058
"ZeroPaddedHexNumber",

0 commit comments

Comments
 (0)