forked from cerc-io/plugeth
e5d5e09faa
EIP-4844 adds a new transaction type for blobs. Users can submit such transactions via `eth_sendRawTransaction`. In this PR we refrain from adding support to `eth_sendTransaction` and in fact it will fail if the user passes in a blob hash. However since the chain can handle such transactions it makes sense to allow simulating them. E.g. an L2 operator should be able to simulate submitting a rollup blob and updating the L2 state. Most methods that take in a transaction object should recognize blobs. The change boils down to adding `blobVersionedHashes` and `maxFeePerBlobGas` to `TransactionArgs`. In summary: - `eth_sendTransaction`: will fail for blob txes - `eth_signTransaction`: will fail for blob txes The methods that sign txes does not, as of this PR, add support the for new EIP-4844 transaction types. Resuming the summary: - `eth_sendRawTransaction`: can send blob txes - `eth_fillTransaction`: will fill in a blob tx. Note: here we simply fill in normal transaction fields + possibly `maxFeePerBlobGas` when blobs are present. One can imagine a more elaborate set-up where users can submit blobs themselves and we fill in proofs and commitments and such. Left for future PRs if desired. - `eth_call`: can simulate blob messages - `eth_estimateGas`: blobs have no effect here. They have a separate unit of gas which is not tunable in the transaction.
34 lines
1.8 KiB
JSON
34 lines
1.8 KiB
JSON
[
|
|
{
|
|
"blockHash": "0xa1410af902e98b32e0bbe464f8637ff464f1d4344b585127d2ce71f9cb39cb8a",
|
|
"blockNumber": "0x3",
|
|
"contractAddress": null,
|
|
"cumulativeGasUsed": "0x5e28",
|
|
"effectiveGasPrice": "0x281c2585",
|
|
"from": "0x703c4b2bd70c169f5717101caee543299fc946c7",
|
|
"gasUsed": "0x5e28",
|
|
"logs": [
|
|
{
|
|
"address": "0x0000000000000000000000000000000000031ec7",
|
|
"topics": [
|
|
"0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
|
|
"0x000000000000000000000000703c4b2bd70c169f5717101caee543299fc946c7",
|
|
"0x0000000000000000000000000000000000000000000000000000000000000003"
|
|
],
|
|
"data": "0x000000000000000000000000000000000000000000000000000000000000000d",
|
|
"blockNumber": "0x3",
|
|
"transactionHash": "0xeaf3921cbf03ba45bad4e6ab807b196ce3b2a0b5bacc355b6272fa96b11b4287",
|
|
"transactionIndex": "0x0",
|
|
"blockHash": "0xa1410af902e98b32e0bbe464f8637ff464f1d4344b585127d2ce71f9cb39cb8a",
|
|
"logIndex": "0x0",
|
|
"removed": false
|
|
}
|
|
],
|
|
"logsBloom": "0x00000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000800000000000000008000000000000000000000000000000000020000000080000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000400000000002000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000",
|
|
"status": "0x1",
|
|
"to": "0x0000000000000000000000000000000000031ec7",
|
|
"transactionHash": "0xeaf3921cbf03ba45bad4e6ab807b196ce3b2a0b5bacc355b6272fa96b11b4287",
|
|
"transactionIndex": "0x0",
|
|
"type": "0x0"
|
|
}
|
|
] |