go-ethereum/params
Arran Schlosberg 5429fd87c8
chore: squash arr4n/libevm into libevm (#7)
* feat: pseudo-generic extra payloads in `params.ChainConfig` and `params.Rules`

* feat: `params.ExtraPayloadGetter` for end-user type safety

* refactor: payloads only available through `params.ExtraPayloadGetter`

* chore: make `libevm/examples/extraparams` a `params` testable example

* doc: `libevm/pseudo` package comments and improved readability

* doc: `params.*Extra*` comments and improved readability

* doc: `params.ExtraPayloadGetter` comments and improved readability

* doc: `params/config.libevm_test.go` comments and improved readability

* refactor: simplify `params.ChainConfig.UnmarshalJSON()`

* refactor: abstract new/nil-pointer creation into `pseudo.Constructor`s

* feat: precompile override via `params.Extras` hooks

* doc: flesh out `PrecompileOverride()` in example

* doc: complete commentary and improve readability

* refactor: `ChainConfig.Hooks()` + `Rules` equivalent

* chore: rename precompiles test file in keeping with geth equivalent

* feat: stateful precompiles + allowlist hooks

The allowlist hooks are included in this commit because they allow for the same functionality as stateful precompiles in `ava-labs/coreth` and `ava-labs/subnet-evm`.

* fix: `StateTransition.canExecuteTransaction()` used `msg.From` instead of `To`

* test: `params.RulesHooks.CanCreateContract` integration

* test: `params.RulesHooks.CanExecuteTransaction` integration

* test: `vm.NewStatefulPrecompile()` integration

* refactor: simplify test of `CanCreateContract`

* refactor: abstract generation of random `Address`/`Hash` values

* doc: full documentation + readability refactoring/renaming

* fix: remove circular dependency in tests
2024-09-10 19:20:32 +01: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 params: update discV5 bootnodes (#28562) 2023-11-23 11:14:10 +01:00
config.go chore: squash arr4n/libevm into libevm (#7) 2024-09-10 19:20:32 +01:00
config.libevm.go chore: squash arr4n/libevm into libevm (#7) 2024-09-10 19:20:32 +01:00
config.libevm_test.go chore: squash arr4n/libevm into libevm (#7) 2024-09-10 19:20:32 +01:00
config_test.go all: tie timestamp based forks to the passage of London (#27279) 2023-05-19 11:27:19 +03:00
dao.go params: remove redundant consts, disable metro on AllProtocolChanges 2017-07-04 12:28:58 +03:00
denomination.go build: upgrade to go 1.19 (#25726) 2022-09-10 13:25:40 +02:00
example.libevm_test.go chore: squash arr4n/libevm into libevm (#7) 2024-09-10 19:20:32 +01:00
hooks.libevm.go chore: squash arr4n/libevm into libevm (#7) 2024-09-10 19:20:32 +01:00
network_params.go les: historical data garbage collection (#19570) 2020-07-13 11:02:54 +02:00
protocol_params.go crypto/kzg4844: add helpers for versioned blob hashes (#28827) 2024-01-19 11:41:17 +01:00
version.go params: release Geth v1.13.14 2024-02-27 13:50:30 +02:00