go-ethereum/params
Arran Schlosberg dc7e27aff4
feat: types.HeaderHooks for RLP overrides (#89)
## Why this should be merged

The `types.Header` fields of both
[`coreth`](https://pkg.go.dev/github.com/ava-labs/coreth/core/types#Header)
and
[`subnet-evm`](https://pkg.go.dev/github.com/ava-labs/subnet-evm/core/types#Header)
have been modified such that their RLP encodings (i.e. block hashes)
aren't compatible with vanilla `geth` nor each other. This PR adds
support for arbitrary RLP encoding coupled with type-safe extra
payloads.

## How this works

Equivalent to #1 (`params`) and #44 (`types.StateAccount`) registration
of pseudo-generic payloads. The only major difference is the guarantee
of a non-nil payload pointer, which means that the payload hooks are
never called on nil pointers as this would make it difficult to decode
RLP into them.

## How this was tested

Round-trip RLP {en,de}coding via a registered stub hook.

---------

Signed-off-by: Arran Schlosberg <519948+ARR4N@users.noreply.github.com>
Co-authored-by: Quentin McGaw <quentin.mcgaw@gmail.com>
2024-12-17 13:54:58 +00:00
..
forks eth/catalyst: add timestamp checks to fcu and new payload and improve param checks (#28230) 2024-01-23 16:02:08 +01:00
bootnodes.go [AUTO] rename Go module + update internal import paths 2024-10-17 01:49:47 +00:00
config.go Merge branch 'auto-rename-module_source-2bd6bd01d2e8561dd7fc21b631f4a34ac16627a1_workflow-c1fc594f020d23958b641a4e5a856b6e52c49d3bece94b95594864db16c1b0fc-main' into arr4n/rename-module 2024-10-17 13:07:28 +11:00
config.libevm.go feat: types.HeaderHooks for RLP overrides (#89) 2024-12-17 13:54:58 +00:00
config.libevm_test.go refactor!: consolidate params and types payload access (#84) 2024-12-09 18:32:15 +00:00
config_test.go [AUTO] rename Go module + update internal import paths 2024-10-17 01:49:47 +00:00
dao.go [AUTO] rename Go module + update internal import paths 2024-10-17 01:49:47 +00:00
denomination.go build: upgrade to go 1.19 (#25726) 2022-09-10 13:25:40 +02:00
example.libevm_test.go refactor!: consolidate params and types payload access (#84) 2024-12-09 18:32:15 +00:00
hooks.libevm.go refactor: consolidate once-only registration of extras (#85) 2024-12-09 17:43:59 +00:00
hooks.libevm_test.go refactor!: consolidate params and types payload access (#84) 2024-12-09 18:32:15 +00:00
json.libevm.go refactor: consolidate once-only registration of extras (#85) 2024-12-09 17:43:59 +00:00
json.libevm_test.go Merge branch 'auto-rename-module_source-2bd6bd01d2e8561dd7fc21b631f4a34ac16627a1_workflow-c1fc594f020d23958b641a4e5a856b6e52c49d3bece94b95594864db16c1b0fc-main' into arr4n/rename-module 2024-10-17 13:07:28 +11:00
network_params.go les: historical data garbage collection (#19570) 2020-07-13 11:02:54 +02:00
protocol_params.go [AUTO] rename Go module + update internal import paths 2024-10-17 01:49:47 +00:00
version.go params: release Geth v1.13.14 2024-02-27 13:50:30 +02:00
version.libevm.go chore: retract v1.13.14-0.1.0-rc.1 (#81) 2024-12-03 13:39:19 +00:00
version.libevm_test.go chore: retract v1.13.14-0.1.0-rc.1 (#81) 2024-12-03 13:39:19 +00:00