-
Notifications
You must be signed in to change notification settings - Fork 7
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
fix: add basic support for multiple transaction types in transaction conversion #2025
Conversation
Enhance transaction input and mined transaction conversion to support various Ethereum transaction types: - Add support for EIP-2930, EIP-1559, EIP-4844, and EIP-7702 transaction types - Improve transaction type handling in conversion logic - Update receipt envelope generation to match transaction types
PR Reviewer Guide 🔍(Review updated until commit 28b1068)Here are some key observations to aid the review process:
|
PR Code Suggestions ✨Latest suggestions up to 28b1068
Previous suggestionsSuggestions up to commit d475d7e
|
Add end-to-end tests for different Ethereum transaction types in the JSON-RPC interface: - Legacy (type 0) transactions - EIP-2930 (type 1) transactions - EIP-1559 (type 2) transactions - EIP-4844 (type 3) transactions Implement test helpers to create and send signed transactions for each type, verifying correct transaction type handling
Persistent review updated to latest commit 28b1068 |
Update transaction type tests to validate transaction details using eth_getTransactionByHash and eth_getTransactionReceipt: - Add hex string type checks for transaction types - Verify additional transaction type-specific properties - Remove deprecated polling mechanism - Improve test coverage for transaction type validation
/flamegraph |
/benchmark |
Benchmark: Git Info:
Configuration:
Leader Stats: Follower Stats: Plots: |
Flamegraphs: Git Info:
Flamegraphs: write: read: follower: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice 👍
Optimize the conversion of transaction input to AlloyTransaction by using a more concise TxKind mapping approach. Replace verbose map and unwrap pattern with a more direct TxKind::from conversion for transaction destination handling.
Final benchmark: Git Info:
Configuration:
Leader Stats: Follower Stats: Plots: |
User description
Enhance transaction input and mined transaction conversion to support various Ethereum transaction types:
PR Type
Enhancement, Tests
Description
Support multiple Ethereum transaction types
Update transaction conversion logic
Implement receipt envelope generation
Add comprehensive transaction type tests
Changes walkthrough 📝
transaction_input.rs
Add support for multiple Ethereum transaction types
src/eth/primitives/transaction_input.rs
transaction types
From
implementation forAlloyTransaction
transaction_mined.rs
Update mined transaction and receipt conversions
src/eth/primitives/transaction_mined.rs
From
implementation forAlloyTransaction
From
implementation forAlloyReceipt
e2e-json-rpc.test.ts
Add end-to-end tests for transaction types
e2e/test/automine/e2e-json-rpc.test.ts
transactions
rpc.ts
Add helper functions for transaction type testing
e2e/test/helpers/rpc.ts
createLegacyTransaction
,createEIP2930Transaction
,createEIP1559Transaction
, andcreateEIP4844Transaction
pollReceipt
function to handle new transaction typesjustfile
Update block comparison command in justfile
justfile
--ignore type
flag from block comparison command