-
Notifications
You must be signed in to change notification settings - Fork 395
Merge forks/osaka into mainnet
#1866
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
Merged
Merged
+690,736
−152,380
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add more tests cases for the `p256verify` precompile where the final computed point `R` is at infinity by passing `Q = -G` and `u1 == u2`. Similar test cases exist in "wycheproof_extra".
* chore(forks): update bpo hardfork params to match testnet. * feat(execute): Update eth-config networks.yml --------- Co-authored-by: Mario Vega <[email protected]>
* test(tests): add BLOCKHASH genesis hash availability test Add regression test verifying BLOCKHASH(0) returns genesis hash in block 1. Tests blockchain test infrastructure properly populates genesis hash before execution, preventing BLOCKHASH(0) from returning 0. Regression context: revm blockchaintest runner wasn't inserting block_hashes into state, causing BLOCKHASH(0) to return 0. This broke tests with dynamic address computations like BLOCKHASH(0) | TIMESTAMP, where the computed address would be incorrect, leading to balance transfer failures. Test validates infrastructure setup by storing ISZERO(BLOCKHASH(0)) which should be 0 (false) when genesis hash is properly available. * test(tests): extend BLOCKHASH test to verify block 1 hash availability Extends test_genesis_hash_available to verify both genesis (block 0) and first executed block (block 1) hash insertion by adding a second block that calls the contract, testing BLOCKHASH(0) and BLOCKHASH(1). Addresses PR feedback to test complete block hash infrastructure. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]> --------- Co-authored-by: Claude <[email protected]>
* Changed intrinsic gas too low for gas below floor gas cost * Fixing wrongly removing intrinsic gas too low error * Fixing message for intrinsic gas too low error * Improved error messages * Added mapping for TYPE_3_TX_CONTRACT_CREATION error
* Enforce keyword-only arguments in calldata_gas_calculator methods and calls * Apply keyword-only enforcement to all BaseFork methods and implementations * fixes --------- Co-authored-by: Abhishek Kafle <[email protected]> Co-authored-by: Mario Vega <[email protected]>
* Enforce keyword-only arguments in calldata_gas_calculator methods and calls * Apply keyword-only enforcement to all BaseFork methods and implementations * fixes --------- Co-authored-by: Abhishek Kafle <[email protected]> Co-authored-by: Mario Vega <[email protected]>
* Enforce keyword-only arguments in calldata_gas_calculator methods and calls * Apply keyword-only enforcement to all BaseFork methods and implementations * fixes --------- Co-authored-by: Abhishek Kafle <[email protected]> Co-authored-by: Mario Vega <[email protected]>
Co-authored-by: Mario Vega <[email protected]>
Co-authored-by: Mario Vega <[email protected]>
Co-authored-by: Mario Vega <[email protected]>
Add better test cases for the `p256verify` precompile where `x` or `y` coordinate of the public key point are incorrectly bigger than `P`. The difference from the previous similar cases is that reducing the invalid values by `P` creates a valid signature. The reduction can happen unintentionally by converting values to the Montgomery form.
* use --chain-id in ProgramChainid * Update tests/frontier/scenarios/programs/context_calls.py --------- Co-authored-by: Mario Vega <[email protected]>
* chore(consume): Mark all consume sync tests as flaky * refactor: simplify consume sync logic * chore: CHANGELOG entry
* chore(consume): Mark all consume sync tests as flaky * refactor: simplify consume sync logic * chore: CHANGELOG entry
…nce in access list (#2253) * add test for repeated address in acl * ruff lint
* ✨ feat(EIP-7928): OOG: Intrinsic gas * 🚧 wip(EIP-7928): OOG tests * fix: BAL expectations for OOG 7928 tests - fix linter * remove equivalent test cases as covered by opcode cases * 🥢 nit: named parameters * fix: Tighten up validation for empty lists on BALs * chore: CHANGELOG entry * chore: fix docstring after refactor --------- Co-authored-by: raxhvl <[email protected]> Co-authored-by: fselmo <[email protected]>
* ✨ feat(EIP-7928): OOG: Intrinsic gas * 🚧 wip(EIP-7928): OOG tests * fix: BAL expectations for OOG 7928 tests - fix linter * remove equivalent test cases as covered by opcode cases * 🥢 nit: named parameters * fix: Tighten up validation for empty lists on BALs * chore: CHANGELOG entry * chore: fix docstring after refactor --------- Co-authored-by: raxhvl <[email protected]> Co-authored-by: fselmo <[email protected]>
* ✨ feat(EIP-7928): OOG: Intrinsic gas * 🚧 wip(EIP-7928): OOG tests * fix: BAL expectations for OOG 7928 tests - fix linter * remove equivalent test cases as covered by opcode cases * 🥢 nit: named parameters * fix: Tighten up validation for empty lists on BALs * chore: CHANGELOG entry * chore: fix docstring after refactor --------- Co-authored-by: raxhvl <[email protected]> Co-authored-by: fselmo <[email protected]>
* type(tests): convert create suicide during init * Fixes, increase coverage * fix: Coverage script * Add coveraged missed reason --------- Co-authored-by: Mario Vega <[email protected]>
* ✨ feat(tests): EIP-7928 tests for EIP-2930: 🧹 chore(tests): Move to new test file ✨ feat(tests): EIP-7928test_bal_2930_slot_listed_and_unlisted_reads ✨ feat(tests): EIP-7928 test_bal_2930_slot_listed_and_unlisted_writes ✨ feat(tests): EIP-7928 test_bal_2930_slot_listed_but_untouched * fix: issues after refactor; rename test file * ✨ feat(test): test_bal_2930_account_listed_but_untouched * chore: move 2930 tests into main test file * chore: add changelog entry * fix: fix rebase error for OOG 7928 tests * fix: validate expected empty account changes --------- Co-authored-by: raxhvl <[email protected]> Co-authored-by: fselmo <[email protected]>
* ✨ feat(tests): EIP-7928 tests for EIP-2930: 🧹 chore(tests): Move to new test file ✨ feat(tests): EIP-7928test_bal_2930_slot_listed_and_unlisted_reads ✨ feat(tests): EIP-7928 test_bal_2930_slot_listed_and_unlisted_writes ✨ feat(tests): EIP-7928 test_bal_2930_slot_listed_but_untouched * fix: issues after refactor; rename test file * ✨ feat(test): test_bal_2930_account_listed_but_untouched * chore: move 2930 tests into main test file * chore: add changelog entry * fix: fix rebase error for OOG 7928 tests * fix: validate expected empty account changes --------- Co-authored-by: raxhvl <[email protected]> Co-authored-by: fselmo <[email protected]>
* ✨ feat(tests): EIP-7928 tests for EIP-2930: 🧹 chore(tests): Move to new test file ✨ feat(tests): EIP-7928test_bal_2930_slot_listed_and_unlisted_reads ✨ feat(tests): EIP-7928 test_bal_2930_slot_listed_and_unlisted_writes ✨ feat(tests): EIP-7928 test_bal_2930_slot_listed_but_untouched * fix: issues after refactor; rename test file * ✨ feat(test): test_bal_2930_account_listed_but_untouched * chore: move 2930 tests into main test file * chore: add changelog entry * fix: fix rebase error for OOG 7928 tests * fix: validate expected empty account changes --------- Co-authored-by: raxhvl <[email protected]> Co-authored-by: fselmo <[email protected]>
`actions-rs` has been archived and is no longer the recommended way to install packages. Instead, I'm using the Ubuntu-provided `rustup`.
… BloatNet tests (#2242) Replace duplicate test functions with parametrized versions to avoid repetitive code. Each test now accepts a `balance_first` parameter that controls the order of operations, eliminating the need for separate `_extcodesize_balance`, `_extcodecopy_balance`, and `_extcodehash_balance` variants. Changes: - Add @pytest.mark.parametrize to test_bloatnet_balance_extcodesize, test_bloatnet_balance_extcodecopy, and test_bloatnet_balance_extcodehash - Each test now generates two variants via parametrization with descriptive IDs (e.g., "balance_extcodesize" and "extcodesize_balance") - Extract operation sequences into variables and conditionally compose them based on balance_first parameter - Remove test_bloatnet_extcodesize_balance, test_bloatnet_extcodecopy_balance, and test_bloatnet_extcodehash_balance (now covered by parametrization) This reduces the file from 793 lines to 462 lines while maintaining the same test coverage (6 tests total: 3 test functions × 2 parametrization values). To run specific parameter variants, use the -k flag: fill -k "balance_extcodesize" tests/benchmark/bloatnet/test_multi_opcode.py fill -k "extcodesize_balance" tests/benchmark/bloatnet/test_multi_opcode.py
* fix(t8n): introduce profiler * profiler pauses * fix(testing/base_types): Speed up to_bytes fix(base_types): unnecessary cast * fix(testing/base_types): CoerceBytes * fix(testing): Optimize pre-alloc grouping state hash * feat(t8n): introduce LazyAlloc * feat(fixtures): Cached genesis model dump * refactor: prefer explicit cache over circular reference (#2) * Update packages/testing/src/execution_testing/client_clis/cli_types.py Co-authored-by: spencer <[email protected]> * fix: verify modified gas limit * refactor: Use generics * refactor: Add state root cache * docs: changelog * feat(client_clis): Add unit tests --------- Co-authored-by: danceratopz <[email protected]> Co-authored-by: spencer <[email protected]>
* feat: added more mainnet tests * fix: fix modexp tests * fix: fix * chore(test-tests): update mainnet marked tests for osaka * chore(test-types): add logging for rejected txs * chore: fix static tox ruff format ci fail * Apply suggestions from code review * fix(tests): Change all mainnet osaka tests to ty-2 tx * fix(tests): Fix EIP-7883 tests --------- Co-authored-by: spencer-tb <[email protected]> Co-authored-by: Mario Vega <[email protected]>
…and (#1822) * feat(execute): Deferred EOA funding * fix(execute): remove _refresh_sender_nonce calls * fix(execute): workaround for priority fee * feat(execute): Support blob transactions * refactor(execute): Re-nonce worker key * refactor(execute): Fixture renames * refactor(execute): unused param * refactor(execute): nit * refactor(execute): Add a ton of logging * fix(plugins): Change `execute remote` from loadscope to load * fix(execute): Try on refund txs * refactor(execute): More logging * fix(execute): Collect only * fix(execute): mypy * fix(plugins): Change `execute hive` from loadscope to load * refactor: Rename flag * docs: Add new features * feat(execute): Use seed directly if not running xdist * fix: docs lint * docs: Changelog * Update docs/running_tests/execute/hive.md Co-authored-by: spencer <[email protected]> * Update docs/running_tests/execute/hive.md Co-authored-by: spencer <[email protected]> * Update docs/running_tests/execute/hive.md Co-authored-by: spencer <[email protected]> * Apply suggestions from code review Co-authored-by: spencer <[email protected]> * Apply suggestions from code review Co-authored-by: spencer <[email protected]> * fix: Logging mode --------- Co-authored-by: spencer <[email protected]>
* refactor: update filter logic * fix: fixed opcode count logic * chore: update comment * refactor: add negate logic
* chore(ci): updates for final osaka test release * chore(docs): bump release date
Co-authored-by: spencer-tb <[email protected]>
* fix reference * fix typo * fix typo
Contributor
Author
|
Don't merge this one directly. I'll do a fast-forward-only push if we're happy with it. |
Add valid ecrecover test inputs which invoke point doubling in the multi-scalar multiplication based on the Shamir trick. Ported from evmone unit tests: ipsilon/evmone#1391.
…#1852) * fix(test-cli-fill): Use default evm-dump-dir for traces; gitignore it --------- Co-authored-by: Mario Vega <[email protected]>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## mainnet #1866 +/- ##
==========================================
Coverage ? 83.87%
==========================================
Files ? 402
Lines ? 25101
Branches ? 2285
==========================================
Hits ? 21053
Misses ? 3609
Partials ? 439
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
* enhance(ci): Add EIP Tracker Issue Template * Add note and paraphrase. * Update .github/ISSUE_TEMPLATE/eip-tracker.yaml Co-authored-by: Carson <[email protected]> * Update .github/ISSUE_TEMPLATE/eip-tracker.yaml Co-authored-by: spencer <[email protected]> * Update .github/ISSUE_TEMPLATE/eip-tracker.yaml Co-authored-by: Carson <[email protected]> * Update .github/ISSUE_TEMPLATE/eip-tracker.yaml Co-authored-by: spencer <[email protected]> * Review feedback * Update .github/ISSUE_TEMPLATE/eip-tracker.yaml * Apply suggestions from code review Co-authored-by: felipe <[email protected]> * Review comments * Update .github/ISSUE_TEMPLATE/eip-tracker.yaml --------- Co-authored-by: Carson <[email protected]> Co-authored-by: spencer <[email protected]> Co-authored-by: felipe <[email protected]>
…rios (#1790) * enhance(test-benchmark): use config file for fixed opcode count scenarios * chore(test-benchmark): update help messages for fixed opcode count and gas bench values * chore(test-benchmark): fix repricing filter to work with both benchmark options * chore(test-benchmark): allow fixed-opcode-count for all benchmark tests * chore(test-benchmark): warn when config file missing for fixed-opcode-count * chore(test-benchmark): update test to match new help text * chore(test-benchmark): remove unnecessary generic_visit call in parser * chore(test-benchmark): format test file
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Cute Animal Picture