go-ethereum/cmd/evm/testdata
Sina M 064f37d6f6
eth/tracers: live chain tracing with hooks (#29189)
Here we add a Go API for running tracing plugins within the main block import process. 

As an advanced user of geth, you can now create a Go file in eth/tracers/live/, and within
that file register your custom tracer implementation. Then recompile geth and select your tracer
on the command line. Hooks defined in the tracer will run whenever a block is processed.

The hook system is defined in package core/tracing. It uses a struct with callbacks, instead of 
requiring an interface, for several reasons:

- We plan to keep this API stable long-term. The core/tracing hook API does not depend on
  on deep geth internals.
- There are a lot of hooks, and tracers will only need some of them. Using a struct allows you
   to implement only the hooks you want to actually use.

All existing tracers in eth/tracers/native have been rewritten to use the new hook system.

This change breaks compatibility with the vm.EVMLogger interface that we used to have.
If you are a user of vm.EVMLogger, please migrate to core/tracing, and sorry for breaking
your stuff. But we just couldn't have both the old and new tracing APIs coexist in the EVM.

---------

Co-authored-by: Matthieu Vachon <matthieu.o.vachon@gmail.com>
Co-authored-by: Delweng <delweng@gmail.com>
Co-authored-by: Martin HS <martin@swende.se>
2024-03-22 18:53:53 +01:00
..
1 core/types: fix discrepancy in receipt.EffectiveGasPrice json encoding tags (#27114) 2023-04-26 02:37:11 -04:00
2 cmd/evm: fix typos in documentation (#27501) 2023-06-19 08:44:54 +02:00
3 cmd/evm/testdata: fix typos in docs (#27742) 2023-07-18 14:07:25 +02:00
4 cmd/evm/testdata: fix typos in docs (#27742) 2023-07-18 14:07:25 +02:00
5 cmd/evm: fix typos in documentation (#27501) 2023-06-19 08:44:54 +02:00
7 cmd/evm: update readmes for the tests (#26841) 2023-03-09 07:06:47 -05:00
8 cmd: fix typos (#28323) 2023-10-17 15:53:10 +08:00
9 accounts, cmd: fix typos (#28300) 2023-10-11 11:29:10 +03:00
10 cmd/evm: update readmes for the tests (#26841) 2023-03-09 07:06:47 -05:00
11 all: implement EIP-1559 (#22837) 2021-05-17 15:13:22 +02:00
12 cmd/evm: update readmes for the tests (#26841) 2023-03-09 07:06:47 -05:00
13 cmd/evm: fix typos in documentation (#27501) 2023-06-19 08:44:54 +02:00
14 cmd/evm: update readmes for the tests (#26841) 2023-03-09 07:06:47 -05:00
15 core/types: improve error for too short transaction / receipt encoding (#24256) 2022-03-09 10:44:53 +01:00
16 cmd/evm: make t9n intrinsicGas output hex, fixes #23883 (#23889) 2021-11-19 10:53:20 +01:00
17 cmd/evm: make t9n intrinsicGas output hex, fixes #23883 (#23889) 2021-11-19 10:53:20 +01:00
18 cmd/evm: handle rlp errors in t9n (#23771) 2021-10-27 13:28:50 +02:00
19 cmd/evm: update readmes for the tests (#26841) 2023-03-09 07:06:47 -05:00
20 cmd/evm: add b11r tool (#23843) 2021-11-22 09:25:35 +01:00
21 cmd/evm: add b11r tool (#23843) 2021-11-22 09:25:35 +01:00
22 cmd/evm: add b11r tool (#23843) 2021-11-22 09:25:35 +01:00
23 cmd/evm: fix typos in documentation (#27501) 2023-06-19 08:44:54 +02:00
24 core/types: fix discrepancy in receipt.EffectiveGasPrice json encoding tags (#27114) 2023-04-26 02:37:11 -04:00
25 core/types: fix discrepancy in receipt.EffectiveGasPrice json encoding tags (#27114) 2023-04-26 02:37:11 -04:00
26 all: implement withdrawals (EIP-4895) (#26484) 2023-01-25 15:32:25 +01:00
27 all: implement withdrawals (EIP-4895) (#26484) 2023-01-25 15:32:25 +01:00
28 cmd/evm: cancun-updates for b11r and t8n -tools (#28195) 2023-10-03 03:26:33 -04:00
29 cmd/evm: cancun-updates for b11r and t8n -tools (#28195) 2023-10-03 03:26:33 -04:00
30 cmd/evm: make t8ntool handle transaction decoding errors better (#28397) 2023-10-25 14:08:52 +02:00
31 eth/tracers: live chain tracing with hooks (#29189) 2024-03-22 18:53:53 +01:00