good morning!!!!

Skip to content
Snippets Groups Projects
Forked from an inaccessible project.
  • lightclient's avatar
    50d97530
    all: add support for EIP-2718, EIP-2930 transactions (#21502) · 50d97530
    lightclient authored
    
    This adds support for EIP-2718 typed transactions as well as EIP-2930
    access list transactions (tx type 1). These EIPs are scheduled for the
    Berlin fork.
    
    There very few changes to existing APIs in core/types, and several new APIs
    to deal with access list transactions. In particular, there are two new
    constructor functions for transactions: types.NewTx and types.SignNewTx.
    Since the canonical encoding of typed transactions is not RLP-compatible,
    Transaction now has new methods for encoding and decoding: MarshalBinary
    and UnmarshalBinary.
    
    The existing EIP-155 signer does not support the new transaction types.
    All code dealing with transaction signatures should be updated to use the
    newer EIP-2930 signer. To make this easier for future updates, we have
    added new constructor functions for types.Signer: types.LatestSigner and
    types.LatestSignerForChainID.
    
    This change also adds support for the YoloV3 testnet.
    
    Co-authored-by: default avatarMartin Holst Swende <martin@swende.se>
    Co-authored-by: default avatarFelix Lange <fjl@twurst.com>
    Co-authored-by: default avatarRyan Schneider <ryanleeschneider@gmail.com>
    # Conflicts:
    #	accounts/abi/bind/backends/simulated.go
    #	cmd/evm/internal/t8ntool/execution.go
    #	cmd/evm/internal/t8ntool/transition.go
    #	cmd/geth/main.go
    #	cmd/geth/usage.go
    #	core/bench_test.go
    #	core/state/statedb.go
    #	core/state_prefetcher.go
    #	core/state_processor.go
    #	core/state_transition.go
    #	core/tx_pool.go
    #	core/types/block.go
    #	core/types/derive_sha.go
    #	core/types/gen_tx_json.go
    #	core/types/receipt.go
    #	core/types/receipt_test.go
    #	core/types/transaction.go
    #	core/types/transaction_signing.go
    #	core/types/transaction_test.go
    #	ethclient/ethclient.go
    #	ethclient/signer.go
    #	graphql/graphql.go
    #	internal/ethapi/api.go
    #	internal/guide/guide_test.go
    #	les/benchmark.go
    #	les/odr_test.go
    #	light/odr_test.go
    #	light/txpool.go
    #	miner/worker.go
    #	miner/worker_test.go
    #	signer/core/api.go
    #	tests/state_test_util.go
    #	trie/stacktrie_test.go
    #	turbo/stages/blockchain_test.go
    50d97530
    History
    all: add support for EIP-2718, EIP-2930 transactions (#21502)
    lightclient authored
    
    This adds support for EIP-2718 typed transactions as well as EIP-2930
    access list transactions (tx type 1). These EIPs are scheduled for the
    Berlin fork.
    
    There very few changes to existing APIs in core/types, and several new APIs
    to deal with access list transactions. In particular, there are two new
    constructor functions for transactions: types.NewTx and types.SignNewTx.
    Since the canonical encoding of typed transactions is not RLP-compatible,
    Transaction now has new methods for encoding and decoding: MarshalBinary
    and UnmarshalBinary.
    
    The existing EIP-155 signer does not support the new transaction types.
    All code dealing with transaction signatures should be updated to use the
    newer EIP-2930 signer. To make this easier for future updates, we have
    added new constructor functions for types.Signer: types.LatestSigner and
    types.LatestSignerForChainID.
    
    This change also adds support for the YoloV3 testnet.
    
    Co-authored-by: default avatarMartin Holst Swende <martin@swende.se>
    Co-authored-by: default avatarFelix Lange <fjl@twurst.com>
    Co-authored-by: default avatarRyan Schneider <ryanleeschneider@gmail.com>
    # Conflicts:
    #	accounts/abi/bind/backends/simulated.go
    #	cmd/evm/internal/t8ntool/execution.go
    #	cmd/evm/internal/t8ntool/transition.go
    #	cmd/geth/main.go
    #	cmd/geth/usage.go
    #	core/bench_test.go
    #	core/state/statedb.go
    #	core/state_prefetcher.go
    #	core/state_processor.go
    #	core/state_transition.go
    #	core/tx_pool.go
    #	core/types/block.go
    #	core/types/derive_sha.go
    #	core/types/gen_tx_json.go
    #	core/types/receipt.go
    #	core/types/receipt_test.go
    #	core/types/transaction.go
    #	core/types/transaction_signing.go
    #	core/types/transaction_test.go
    #	ethclient/ethclient.go
    #	ethclient/signer.go
    #	graphql/graphql.go
    #	internal/ethapi/api.go
    #	internal/guide/guide_test.go
    #	les/benchmark.go
    #	les/odr_test.go
    #	light/odr_test.go
    #	light/txpool.go
    #	miner/worker.go
    #	miner/worker_test.go
    #	signer/core/api.go
    #	tests/state_test_util.go
    #	trie/stacktrie_test.go
    #	turbo/stages/blockchain_test.go
Code owners
Assign users and groups as approvers for specific file changes. Learn more.