Ethereum Test Forks package¶
Ethereum test fork definitions.
Frontier
¶
Bases: BaseFork
Frontier fork
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
|
header_base_fee_required(block_number, timestamp)
classmethod
¶
At genesis, header must not contain base fee
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
13 14 15 16 17 18 |
|
header_prev_randao_required(block_number, timestamp)
classmethod
¶
At genesis, header must not contain Prev Randao value
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
20 21 22 23 24 25 |
|
header_zero_difficulty_required(block_number, timestamp)
classmethod
¶
At genesis, header must not have difficulty zero
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
27 28 29 30 31 32 |
|
header_withdrawals_required(block_number, timestamp)
classmethod
¶
At genesis, header must not contain withdrawals
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
34 35 36 37 38 39 |
|
header_excess_data_gas_required(block_number, timestamp)
classmethod
¶
At genesis, header must not contain excess data gas
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
41 42 43 44 45 46 |
|
header_data_gas_used_required(block_number, timestamp)
classmethod
¶
At genesis, header must not contain data gas used
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
48 49 50 51 52 53 |
|
get_reward(block_number, timestamp)
classmethod
¶
At Genesis the expected reward amount in wei is 5_000_000_000_000_000_000
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
55 56 57 58 59 60 61 |
|
BerlinToLondonAt5
¶
Bases: Berlin
Berlin to London transition at Block 5 fork
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/transition.py
9 10 11 12 13 14 15 16 17 18 19 20 |
|
header_base_fee_required(block_number, _)
classmethod
¶
Base Fee is required starting from London.
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/transition.py
15 16 17 18 19 20 |
|
InvalidForkError
¶
Bases: Exception
Invalid fork error raised when the fork specified by command-line option --latest-fork is not found.
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/helpers.py
11 12 13 14 15 16 17 18 |
|
get_forks()
¶
Returns a list of all the fork classes implemented by
ethereum_test_forks
ordered chronologically by deployment.
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/helpers.py
21 22 23 24 25 26 27 28 29 30 31 32 33 |
|
MergeToShanghaiAtTime15k
¶
Bases: Merge
Merge to Shanghai transition at Timestamp 15k fork
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/transition.py
23 24 25 26 27 28 29 30 31 32 33 34 |
|
header_withdrawals_required(_, timestamp)
classmethod
¶
Withdrawals are required starting from Shanghai.
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/transition.py
29 30 31 32 33 34 |
|
get_deployed_forks()
¶
Returns a list of all the fork classes implemented by ethereum_test_forks
that have been deployed to mainnet, chronologically ordered by deployment.
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/helpers.py
36 37 38 39 40 41 |
|
ShanghaiToCancunAtTime15k
¶
Bases: Shanghai
Shanghai to Cancun transition at Timestamp 15k
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/transition.py
37 38 39 40 41 42 43 44 45 46 47 48 |
|
header_excess_data_gas_required(_, timestamp)
classmethod
¶
Excess data gas is required if transitioning to Cancun.
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/transition.py
43 44 45 46 47 48 |
|
get_development_forks()
¶
Returns a list of all the fork classes implemented by ethereum_test_forks
that have been not yet deployed to mainnet and are currently under
development. The list is ordered by their planned deployment date.
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/helpers.py
44 45 46 47 48 49 50 |
|
get_transition_forks()
¶
Returns all the transition forks
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/helpers.py
60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
|
Homestead
¶
Bases: Frontier
Homestead fork
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
64 65 66 67 68 69 |
|
Byzantium
¶
Bases: Homestead
Byzantium fork
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
72 73 74 75 76 77 78 79 80 81 82 83 |
|
get_reward(block_number, timestamp)
classmethod
¶
At Byzantium, the block reward is reduced to 3_000_000_000_000_000_000 wei
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
77 78 79 80 81 82 83 |
|
transition_fork_from_to(fork_from, fork_to)
¶
Returns the transition fork that transitions to and from the specified forks.
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/helpers.py
76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
|
Constantinople
¶
Bases: Byzantium
Constantinople fork
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
86 87 88 89 90 91 92 93 94 95 96 97 |
|
get_reward(block_number, timestamp)
classmethod
¶
At Constantinople, the block reward is reduced to 2_000_000_000_000_000_000 wei
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
91 92 93 94 95 96 97 |
|
transition_fork_to(fork_to)
¶
Returns the transition fork that transitions to the specified fork.
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/helpers.py
93 94 95 96 97 98 99 100 101 102 103 104 |
|
ConstantinopleFix
¶
Bases: Constantinople
Constantinople Fix fork
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
100 101 102 103 104 105 |
|
forks_from_until(fork_from, fork_until)
¶
Returns the specified fork and all forks after it until and including the second specified fork
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/helpers.py
107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 |
|
Istanbul
¶
Bases: ConstantinopleFix
Istanbul fork
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
108 109 110 111 112 113 |
|
MuirGlacier
¶
Bases: Istanbul
Muir Glacier fork
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
117 118 119 120 121 122 |
|
Berlin
¶
Bases: Istanbul
Berlin fork
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
125 126 127 128 129 130 |
|
forks_from(fork, deployed_only=True)
¶
Returns the specified fork and all forks after it.
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/helpers.py
129 130 131 132 133 134 135 136 137 |
|
London
¶
Bases: Berlin
London fork
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
133 134 135 136 137 138 139 140 141 142 143 |
|
header_base_fee_required(block_number, timestamp)
classmethod
¶
Base Fee is required starting from London.
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
138 139 140 141 142 143 |
|
is_fork(fork, which)
¶
Returns True
if fork
is which
or beyond, `False otherwise.
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/helpers.py
140 141 142 143 144 145 146 147 148 149 150 151 152 |
|
ArrowGlacier
¶
Bases: London
Arrow Glacier fork
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
147 148 149 150 151 152 |
|
GrayGlacier
¶
Bases: ArrowGlacier
Gray Glacier fork
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
155 156 157 158 159 160 |
|
Merge
¶
Bases: London
Merge fork
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 |
|
header_prev_randao_required(block_number, timestamp)
classmethod
¶
Prev Randao is required starting from Merge.
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
168 169 170 171 172 173 |
|
header_zero_difficulty_required(block_number, timestamp)
classmethod
¶
Zero difficulty is required starting from Merge.
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
175 176 177 178 179 180 |
|
get_reward(block_number, timestamp)
classmethod
¶
Merge updates the reward to 0.
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
182 183 184 185 186 187 |
|
Shanghai
¶
Bases: Merge
Shanghai fork
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
190 191 192 193 194 195 196 197 198 199 200 |
|
header_withdrawals_required(block_number, timestamp)
classmethod
¶
Withdrawals are required starting from Shanghai.
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
195 196 197 198 199 200 |
|
Cancun
¶
Bases: Shanghai
Cancun fork
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 |
|
is_deployed()
classmethod
¶
Flags that Cancun has not been deployed to mainnet; it is under active development.
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
208 209 210 211 212 213 214 |
|
header_excess_data_gas_required(block_number, timestamp)
classmethod
¶
Excess data gas is required starting from Cancun.
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
216 217 218 219 220 221 |
|
header_data_gas_used_required(block_number, timestamp)
classmethod
¶
Data gas used is required starting from Cancun.
Source code in /home/dtopz/code/github/danceratopz/execution-spec-tests/src/ethereum_test_forks/forks/forks.py
223 224 225 226 227 228 |
|