Open
Description
The core/types package is an API-stable package containing the Ethereum protocol types. While we have managed to keep it stable for many years, it is time to fix some fundamental issues with the API. This issue is for collecting ideas for the new package.
Receipts
- Receipt should be split into derived/un-derived
- decoding receipts and logs is slow, so we should ideallly implement the consensus receipts as an opaque type that is not fully decoded
- Receipt bloom filter should be removed somehow (like in eth/protocols/eth/receipt.go)
Block header
- Make headers extensible by L2 projects more easily by splitting into 'base' fields and beacon-chain related fields.
Transactions
- Make it possible to implement new transaction types outside of core/types
Backward-compatibility wrapper
We will not be able to fully implement the old core/types API on top of the new one, so I guess we will just have to maintain both packages for a while.
Metadata
Metadata
Assignees
Labels
No labels