Skip to content

Commit 2bd2fc1

Browse files
committed
feat(fork): Add basic Amsterdam fork support
1 parent 3e72c62 commit 2bd2fc1

File tree

5 files changed

+18
-0
lines changed

5 files changed

+18
-0
lines changed

docs/CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,7 @@ Users can select any of the artifacts depending on their testing needs for their
137137
- ✨ All commands (`fill`, `consume`, `execute`) now work without having to clone the repository, e.g. `uv run --with git+https://github.com/ethereum/execution-spec-tests.git consume` now works from any folder ([#1863](https://github.com/ethereum/execution-spec-tests/pull/1863)).
138138
- 🔀 Move Prague to stable and Osaka to develop ([#1573](https://github.com/ethereum/execution-spec-tests/pull/1573)).
139139
- ✨ Add a `pytest.mark.with_all_typed_transactions` marker that creates default typed transactions for each `tx_type` supported by the current `fork` ([#1890](https://github.com/ethereum/execution-spec-tests/pull/1890)).
140+
- ✨ Add basic support for ``Amsterdam`` fork in order to begin testing Glamsterdam ([#2069](https://github.com/ethereum/execution-spec-tests/pull/2069)).
140141

141142
### 🧪 Test Cases
142143

src/ethereum_test_forks/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
BPO2,
77
BPO3,
88
BPO4,
9+
Amsterdam,
910
ArrowGlacier,
1011
Berlin,
1112
Byzantium,
@@ -83,6 +84,7 @@
8384
"TransitionForkAdapter",
8485
"TransitionForkOrNoneAdapter",
8586
"ForkAttribute",
87+
"Amsterdam",
8688
"ArrowGlacier",
8789
"Berlin",
8890
"BerlinToLondonAt5",

src/ethereum_test_forks/forks/forks.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1560,6 +1560,15 @@ def blob_base_cost(cls, block_number: int = 0, timestamp: int = 0) -> int:
15601560
return 2**13 # EIP-7918 new parameter
15611561

15621562

1563+
class Amsterdam(Osaka):
1564+
"""Amsterdam fork."""
1565+
1566+
@classmethod
1567+
def is_deployed(cls) -> bool:
1568+
"""Return True if this fork is deployed."""
1569+
return False
1570+
1571+
15631572
class BPO1(Osaka, bpo_fork=True):
15641573
"""BPO1 fork - Blob Parameter Only fork 1."""
15651574

src/pytest_plugins/eels_resolutions.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,5 +51,10 @@
5151
},
5252
"BPO4": {
5353
"same_as": "EELSMaster"
54+
},
55+
"Amsterdam": {
56+
"git_url": "https://github.com/fselmo/execution-specs.git",
57+
"branch": "feat/amsterdam-fork-and-block-access-lists",
58+
"commit": "59ff2946ca30879079b2ef2b601ae09106ca08f7"
5459
}
5560
}

tests/amsterdam/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
"""Test cases for EVM functionality introduced in Amsterdam, [EIP-7773: Hardfork Meta - Glamsterdam](https://eip.directory/eips/eip-7773).""" # noqa: E501

0 commit comments

Comments
 (0)