go-ethereum/trie
lightclient bbfb1e4008
all: add support for EIP-2718, EIP-2930 transactions (#21502)
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: Martin Holst Swende <martin@swende.se>
Co-authored-by: Felix Lange <fjl@twurst.com>
Co-authored-by: Ryan Schneider <ryanleeschneider@gmail.com>
2021-02-25 15:26:57 +01:00
..
committer.go all: simplify nested complexity and if blocks ending with a return statement (#21854) 2020-11-25 09:24:50 +01:00
database.go snapshot, trie: fixed typos, mostly in snapshot pkg (#22133) 2021-01-07 08:36:21 +02:00
database_test.go trie: there's no point in retrieving the metaroot 2019-04-05 13:09:28 +03:00
encoding.go trie: use stacktrie for Derivesha operation (#21407) 2020-09-29 17:38:13 +02:00
encoding_test.go trie: use stacktrie for Derivesha operation (#21407) 2020-09-29 17:38:13 +02:00
errors.go trie: more node iterator improvements (#14615) 2017-06-20 18:26:09 +02:00
hasher.go trie: polishes to trie committer (#21351) 2020-09-30 13:45:56 +02:00
iterator.go all: remove redundant conversions and import names (#21903) 2020-11-25 21:00:23 +01:00
iterator_test.go les: historical data garbage collection (#19570) 2020-07-13 11:02:54 +02:00
node.go cmd, core, eth, trie: get rid of trie cache generations (#19262) 2019-03-14 15:25:12 +02:00
node_test.go add node.go unit test file node_test.go (#20028) 2020-01-07 10:31:20 +01:00
notary.go core, eth: split eth package, implement snap protocol (#21482) 2020-12-14 10:27:15 +01:00
proof.go trie: fix range prover (#22210) 2021-01-22 10:11:24 +01:00
proof_test.go trie: fix range prover (#22210) 2021-01-22 10:11:24 +01:00
secure_trie.go all: disable recording preimage of trie keys (#21402) 2020-11-18 11:51:33 +02:00
secure_trie_test.go cmd, core, eth, trie: get rid of trie cache generations (#19262) 2019-03-14 15:25:12 +02:00
stacktrie.go all: bloom-filter based pruning mechanism (#21724) 2021-02-08 13:16:30 +02:00
stacktrie_test.go all: add support for EIP-2718, EIP-2930 transactions (#21502) 2021-02-25 15:26:57 +01:00
sync.go trie: fix bloom crash on fast sync restart 2021-02-16 10:44:38 +02:00
sync_bloom.go go.mod: use github.com/holiman/bloomfilter/v2 (#22044) 2021-01-12 17:39:31 +01:00
sync_test.go core, trie: speed up some tests with quadratic processing flaw (#21987) 2020-12-10 14:48:32 +01:00
trie.go core, eth: split eth package, implement snap protocol (#21482) 2020-12-14 10:27:15 +01:00
trie_test.go all: remove unneeded parentheses (#21921) 2021-02-02 11:32:44 +02:00