Skip to content

v2.20.0 - BPO2

Latest

Choose a tag to compare

@SamWilsn SamWilsn released this 19 Feb 19:07
· 264 commits to forks/amsterdam since this release
2004296

What's Changed

  • fix(ci): handle new branch push and other triggers by @gurukamath in #1913
  • feat(test-client-clis): Optimize fill for non-bpo forks by @marioevz in #1924
  • fix(test): align blob params with specs for Amsterdam by @fselmo in #1926
  • chore: correct has_compute_requests_hash description by @jihoonsong in #1929
  • feat(tests): add test "framework" for BN254 precompiles by @chfast in #1871
  • Fix/broken links by @Praniti1594 in #1750
  • feat(tests): add 7702 auth chain id 0x00 test (invalid) by @jochem-brouwer in #1905
  • feat(benchmarks): fix benchmark for warm SSTORE/SLOAD for Osaka by @jsign in #1915
  • feat(benchmarks): fix benchmark for SELFDESTRUCT of existing accounts for Osaka by @jsign in #1904
  • feat(benchmarks): fix benchmark for BALANCE scenario for Osaka by @jsign in #1862
  • refactor(test-cli-consume,rpc): use tenacity for retry logic by @danceratopz in #1930
  • fix(test-benchmark): failing auth benchmark test for Osaka compatibility by @LouisTsai-Csie in #1927
  • feat(benchmarks): fix bytecode attack for CALL-like opcodes to work in Osaka by @jsign in #1850
  • feat(benchmarks): fix benchmark for SELFDESTRUCT of created accounts for Osaka by @jsign in #1906
  • feat(benchmarks): fix benchmark for SELFDESTRUCT of initcode contracts for Osaka by @jsign in #1914
  • chore(tests): fix linting issue by @LouisTsai-Csie in #1944
  • feat(tests): port basic BN254 ecadd tests by @chfast in #1935
  • feat(tests): add new critical test cases for BN254 input validation by @chfast in #1948
  • feat(test-benchmark): implement opcode count verification by @LouisTsai-Csie in #1869
  • chore(docs): fix spelling and grammar errors by @maradini77 in #1950
  • fix(evm): CLZ is not UndefinedOpcodes by @pdobacz in #1970
  • feat(test-benchmark): fixed precompile count support by @LouisTsai-Csie in #1955
  • chore(test-*): fix typos in packages/testing/ by @danceratopz in #1969
  • feat(test-benchmark): add missing fuzzy-compute configs by @LouisTsai-Csie in #1956
  • refactor(test-benchmark): update repricing label by @LouisTsai-Csie in #1980
  • chore(tooling): run codespell on all files; improve skip config by @danceratopz in #1966
  • chore(spec-tests): fix typos in tests/ by @danceratopz in #1968
  • chore(ci): add gas benchmark value 5 back to feature releases by @spencer-tb in #1982
  • bug(test-benchmark): update code padding in fixed opcode count mode by @LouisTsai-Csie in #1983
  • feat(test): Turn on filling static tests for bal releases by @fselmo in #1973
  • fix(test): Increase balance for blob test fails w/ larger blob params by @fselmo in #1975
  • bug(test-cli): fix extract config by @marioevz in #1947
  • chore(test-benchmark): remove seperate pre alloc groups by @spencer-tb in #1986
  • feat(benchmark): add EXTCODESIZE bytecode size benchmark for cold access testing by @CPerezz in #1961
  • chore(test-types): Add extra="forbid" to CamelModel; fix errors by @fselmo in #1989
  • feat(tests): Expand 7702 tests by @pdobacz in #1974
  • enhance(ci): improve benchmark workflows by @spencer-tb in #1853
  • feat(test-execute): Implement pre.deterministic_deploy_contract by @marioevz in #1934
  • fix(tests): Invalid parameter for Account in test by @marioevz in #2001
  • fix(test-types): Loosen pydantic strictness on internal pydantic models by @fselmo in #2000
  • feat(ci,deps): lint workflow files; check deps are pinned by @danceratopz in #2005
  • chore(test-fill): fix pytest warnings in console test summary by @danceratopz in #1993
  • fix(test-tests): prevent race condition in gentest tests w/xdist by @danceratopz in #2009
  • feat(test-execute): tx batching for execute remote by @LouisTsai-Csie in #1907
  • feat(test-benchmark): add missing opcode and configs by @LouisTsai-Csie in #2006
  • feat(test-benchmark): add missing precompile config by @LouisTsai-Csie in #2003
  • feat(test-tests) add testcase for calldata/codecopy OOG by @bshastry in #2012
  • chore(test-forks): update Osaka and BPO fork deployment status by @spencer-tb in #2013
  • refactor(test-benchmark): relabel repricing marker by @LouisTsai-Csie in #2015
  • chore(ci): reduce docker hub rate limit usage in hive-consume workflow by @spencer-tb in #2004
  • fix(test-types): format Transaction values as readable hex-strings instead of raw bytes (#1803) by @felix314159 in #1803
  • fix(test-types,ci): use evm in packages/test unit tests & fix TransactionReceipt by @danceratopz in #2014
  • feat(benchmark): support tx gas limit cap in stateful benchmarks by @CPerezz in #1962
  • feat(testing/forks): Implement bytecode.gas_cost(fork) by @marioevz in #2002
  • feat(specs,tests): Implement EIP-7928 Block-Level Access Lists by @fselmo in #1719
  • chore(spec-specs): fix typos in src/ethereum/ by @danceratopz in #1965
  • chore(ci): add all EL clients to hive master config by @danceratopz in #2034
  • chore: fix PR template links to execution-specs by @danceratopz in #2035
  • fix(docs): fix reference to master branch; use mainnet instead by @danceratopz in #2037
  • feat(benchmarks): fix bytecode attack for EXT-like opcodes to work in Osaka by @jsign in #1971
  • chore(test-tests): remove eof from tests/eest by @spencer-tb in #1873
  • fix(tests-execute): relax pydantic checks on GetPayloadResponse by @danceratopz in #2039
  • chore(ci): skip redundant checks in workflows by @spencer-tb in #2038
  • chore(testing/vm): Remove UndefinedOpcodes by @marioevz in #2044
  • chore(tooling): do not gitignore source files in fixtures folders by @felix314159 in #2047
  • fix(tooling,test-*): enable project ruff config for packages/testing by @danceratopz in #2046
  • fix(tools): fix remaining lint checks after large ruff refactor by @fselmo in #2050
  • feat(ci): Create Devnet Workflows by @marioevz in #2053
  • feat(test): port static context static tests to python by @fselmo in #1960
  • feat(tests): turn on EIP-7934 tests with BALs by @fselmo in #2058
  • refactor(spec): refactor execute_code into process_message by @fselmo in #2061
  • chore(docs): bump docs fork to amsterdam by @spencer-tb in #2064
  • bugfix(tests): Put BAL back into test fixtures for next bal release by @fselmo in #2066
  • chore(test-specs): fix fork transition tests by @spencer-tb in #2065
  • fix(tests): Remove bad opcode test; opt for test_all_opcodes coverage by @fselmo in #2070
  • feat(ci): Run static checks on all generated branches by @marioevz in #2071
  • feat(test-benchmark): Introduce create2 helper for address computation by @LouisTsai-Csie in #1996
  • refactor(test-tests): Port create collision tests by @chfast in #2031
  • feat(tests): Add BAL tests that dequeue consolidations by @gurukamath in #2076
  • fix(tests): fix EIP-7934 tests logic accuracy by @fselmo in #2078
  • feat(test-cli): add hasher compare subcommand by @danceratopz in #2080
  • fix(tests): update nethermind exceptions by @flcl42 in #2098
  • feat(test-fill): speed up filling by @fselmo in #2079
  • fix(test-benchmark): support blobhash benchmark by @LouisTsai-Csie in #2067
  • feat(testing/fixtures): Add logs to state fixtures by @marioevz in #2091
  • refactor(test-benchmark): update benchmark fork to Osaka by @LouisTsai-Csie in #2104
  • doc(test-benchmark): framework description and developer guideline by @LouisTsai-Csie in #2100
  • feat(test-benchmark): add EIP-7825 tx splitting and fix & include stubs.json by @CPerezz in #2112
  • fix(test-consume): Add hive ruleset for BPO2ToAmsterdamAtTime15k by @fselmo in #2111
  • chore(pyproject): declare Python 3.12 support in package metadata by @talhaaktss in #1888
  • fix(test-benchmark): skip rlp size limit check by @LouisTsai-Csie in #2118
  • fix(test-fill): stream fixture JSON writes to reduce peak memory by @danceratopz in #2124
  • fix(test-fill): improve memory buildup for fill; merge on SIGINT / SIGTERM by @fselmo in #2117
  • fix(tests): add new Besu exception for BlockException.GAS_USED_OVERFLOW by @daniellehrner in #2126
  • fix(test): lint by @fselmo in #2128
  • chore(tests): use representative blob combos in high blob count forks by @danceratopz in #2127
  • feat(benchmark/tests): Extra sstore benchmark tests by @marioevz in #2130
  • fix(test-fill): use k-way merge for fixture json to reduce memory footprint by @fselmo in #2131
  • feat(tools): retry rpc calls on server-side error by @SamWilsn in #2056
  • feat(test-fill): performance improvements for release processes and fill by @fselmo in #2140
  • feat(test-benchmark): add gas limit check for BLS12_G2_MSM benchmark by @LouisTsai-Csie in #2143
  • fix(test-ci): Fix benchmark artifact expectation for new builder prealloc by @fselmo in #2142
  • refactor(testing): Implement IteratingBytecode, FixedIterationsBytecode by @marioevz in #2030
  • feat(test-benchmark): updates and fixes for fixed opcode count by @spencer-tb in #1985
  • fix(docs): add missing lines code coverage field to eip checklist by @felix314159 in #2137
  • chore(test-benchmark): skip test_blockhash tests by @spencer-tb in #2145
  • chore(ci): only fill native test formats in tox's pypy3 env by @danceratopz in #2116
  • fix(tests/benchmark): Max size contract deployment execution by @marioevz in #2149
  • fix(test-ci): fix issues with recent changes to checklist by @fselmo in #2151
  • feat(tests): BAL tests for 7702 delegation reset, create and access by @gurukamath in #2097
  • feat(tests): add warm and cold account query benchmark by @LouisTsai-Csie in #2138
  • fix(benchmark): reduce stateful stubs to 4 representative tokens by @CPerezz in #2141
  • docs: Update package names from ethereum_test_* to execution_testing.* by @aryanpatil2703 in #1793
  • feat(benchmarks): add keccak benchmark with updated memory by @jochem-brouwer in #1849
  • feat(tests): add test case for create2 selfdestruct and recreate by @nerolation in #2121
  • refactor(spec-tool): remove unused fields by @Galoretka in #2105
  • chore(tooling): add initial claude config and skills by @danceratopz in #2024
  • chore(test-client-clis): add Nethermind exception for BlockException.GAS_USED_OVERFLOW by @benaadams in #2165
  • fix(testing/execute): Phase not being correctly passed as tx request ID by @marioevz in #2161
  • refactor(test-benchmark): failing sstore / sload benchmark cases by @LouisTsai-Csie in #2147
  • feat(test-benchmark): support dynamic keccak256 input by @LouisTsai-Csie in #2152
  • fix(fw): Less restrictive TransactionTraces CamelModel by @pdobacz in #2081
  • feat(test): performance and fill updates; print -> debug log session finish by @fselmo in #2150
  • refactor(tests): Add fork parameter to Initcode generator by @pdobacz in #2176
  • chore: add execute remote skip marker by @LouisTsai-Csie in #2178
  • fix(tests): EIP-7883 minor fixes by @pdobacz in #2082
  • refactor(bloatnet): split stubs into mainnet and bloatnet files by @CPerezz in #2182
  • feat(testing/fill): Account-hash-based deploy addresses by @marioevz in #2139
  • feat(benchmarking): Optimize IteratingBytecode by @marioevz in #2184
  • fix(test-vm): Revert module-level cache to instance by @fselmo in #2185
  • refactor(test-tests): migrate frontier to shanghai gas costs to bytecode.gas_cost(fork) by @spencer-tb in #2188
  • chore: update style guidelines by @SamWilsn in #2158
  • refactor(test-tests): migrate amsterdam gas costs to use bytecode.gas_cost(fork) by @spencer-tb in #2186
  • refactor(test-tests): migrate cancun to osaka gas costs to bytecode.gas_cost(fork) by @spencer-tb in #2191
  • fix(tests): add BAL related mappings to ethrex exception mapper by @edg-l in #2193
  • refactor(test-tests): migrate precompile gas costs to fork.gas_costs() by @spencer-tb in #2192
  • chore(tooling,ci): throttle py3 xdist workers locally, use all cores in CI by @danceratopz in #2120
  • refactor(testing): Refactor Initcode to allign gas_cost behavior with Bytecode by @marioevz in #2201
  • fix(tests): update ethrex exception mapper for gas limit errors by @edg-l in #2209
  • feat(test-benchmark): add worst-case depth attack benchmarks for Ethereum state tries using deterministic deploy by @marioevz in #1976
  • refactor(test-benchmark): compute benchmark via gas cost calculator by @LouisTsai-Csie in #2198
  • refactor(test-benchmark): add bytecode gas cost calculator by @LouisTsai-Csie in #2122
  • fix(tests): fix bloatnet/mainnet stubs to point to working ERC20 by @jochem-brouwer in #2214
  • fix(tooling): correct codespell skip patterns for fixture directories by @danceratopz in #2218
  • feat(test-benchmark): support eip-2780 benchmark by @LouisTsai-Csie in #2171
  • feat(tests): add benchmark for transfers to non-existent receivers by @MariusVanDerWijden in #1872
  • fix(test-benchmark): #1872 merge issue by @marioevz in #2221
  • feat(tests): EIP-198 modexp cases with truncated inputs by @pdobacz in #2180
  • feat(test-consume): Add consume direct support for Besu by @raxhvl in #2219
  • chore(test-benchmark): add repricing pytest marker to unchunkified test by @kamilchodola in #2224
  • feat(tests): EIP-7928 tests for EIP 2935 by @raxhvl in #2113
  • chore(ci): use sudo for apt by @SamWilsn in #2232
  • chore(specs): update bpo2 fork table by @SamWilsn in #2231
  • refactor(tests): Leftover manual gas calculation/hard-coded gas costs by @marioevz in #2222
  • chore: add missing bpo forks to pyproject by @SamWilsn in #2233
  • feat(test-client-clis): add stream-mode opcode count support for geth by @spencer-tb in #2170
  • fix: include bpo1 in pyproject.toml by @SamWilsn in #2234
  • fix(test-specs): Exclude full post-state/setup-tx receipts on benchmarks by @marioevz in #2226
  • chore(specs): bump version by @SamWilsn in #2239

New Contributors

Full Changelog: v2.19.0...v2.20.0