Commit graph

545 commits

Author SHA1 Message Date
Daniel Liu
0f4d266b9b
internal/ethapi: fix missing proper error propagation, close XFN-118 (#1683) 2025-11-03 12:50:04 +05:30
Daniel Liu
737bfa45a6
internal/ethapi: prealloc map for the txpool api #32110, close XFN-106 (#1685) 2025-11-03 12:49:48 +05:30
Daniel Liu
58c066f053
all: handle err from func rlp.Encode, close XFN-127 (#1692) 2025-11-03 12:45:19 +05:30
Daniel Liu
689ac1b12a
internal/ethapi: remove error return value of RPCMarshalBlock #27449 (#1604) 2025-10-31 09:57:48 +05:30
Daniel Liu
378d14f2fc
internal/ethapi: minor refactor in block serialization #27268 (#1600) 2025-10-30 20:26:18 +05:30
wit liu
9f14aebcae
internal/ethapi: fix receiver name for BlockChainAPI (#1621) 2025-10-19 14:41:04 +08:00
Daniel Liu
915186fea2
internal/ethapi: refactor func rpcMarshalBlock #19570 (#1602) 2025-10-08 13:01:56 +08:00
Daniel Liu
72bfc81606
internal/ethapi: fix encoding of uncle headers and pending blocks #20460 (#1599) 2025-10-08 12:56:31 +08:00
Daniel Liu
e48bda95c3
internal/ethapi: use correct signer when serving old blocks #23683 (#1598) 2025-10-08 12:54:57 +08:00
Daniel Liu
a311f01c7a
eth, internal: add getHeaderBy* APIs #19669 (#1597) 2025-10-08 12:52:56 +08:00
Daniel Liu
f9f47d2836
internal/ethapi: move revertError #28703 (#1591) 2025-10-08 12:50:02 +08:00
Daniel Liu
dce7b371a0
eth/gasestimator, internal/ethapi: move gas estimator out of rpc #28600 (#1589) 2025-10-08 12:47:45 +08:00
wit liu
afdb029356
internal/ethapi: remove unused estimateGasError (#1588) 2025-10-08 12:39:11 +08:00
Daniel Liu
6e8d261e42
all: eliminate zero owner variables (#1587) 2025-10-08 12:38:32 +08:00
Daniel Liu
940aeb3ccd
internal/ethapi: refactor func DoCall (#1586) 2025-10-08 12:36:35 +08:00
Daniel Liu
28c75fc213
internal/ethapi: change Time field to uint64 #26474 (#1585) 2025-10-08 12:33:13 +08:00
Daniel Liu
486d4cae73
internal/ethapi: add basefee to block overrides #25219 (#1583)
Co-authored-by: Sina Mahmoodi <1591639+s1na@users.noreply.github.com>
2025-10-08 12:31:36 +08:00
wit liu
f709ef2edb
all: remove extra empty lines (#1574) 2025-10-08 12:25:10 +08:00
Daniel Liu
f46920b407
core, eth, internal: improve getBadBlocks to return full block rlp #16902 (#1595) 2025-09-26 19:02:13 +08:00
Daniel Liu
0ece8529c4
cmd, eth, internal/ethapi: allow for flag configured timeouts for eth_call #23645 (#1593) 2025-09-26 19:01:02 +08:00
wit liu
d20f91057a
all: fix whitespace (#1572) 2025-09-24 07:58:40 +08:00
Daniel Liu
8615067df1
cmd, console, internal: support interrupting the js console #23387 (#1533) 2025-09-21 19:23:41 +08:00
Daniel Liu
2e545959dd
internal/web3ext: enforce mixed caps variable names #19059 (#1519) 2025-09-21 18:56:21 +08:00
Daniel Liu
ea239d5b15
eth/tracers, internal/ethapi: remove unnecessary map pointer in state override #30094 (#1483) 2025-09-13 10:41:51 +08:00
wit765
12eab8e785
all: rename ChainId to ChainID #16853 (#1456)
Co-authored-by: wit <wit765765346@gmail>
2025-09-09 22:54:34 +08:00
Daniel Liu
ad9003c41e
eth/tracers: live chain tracing with hooks #29189 (#1352)
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: Sina M <1591639+s1na@users.noreply.github.com>
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>
2025-09-09 17:30:56 +08:00
Daniel Liu
a8c252f5bc
eth/tracers, internal/ethapi: use correct baseFee when BlockOverrides is provided in call/traceCall #29051 (#1347) 2025-09-09 16:25:46 +08:00
Daniel Liu
cb80dbe4f6
internal/ethapi: add block overrides to eth_call #26414 (#1332) 2025-09-09 14:39:59 +08:00
Daniel Liu
be61f66cb2
core/types: remove message #25977 (#1322) 2025-09-09 11:23:47 +08:00
wit765
a943fcee3c
internal/ethapi: fix time type (#1455)
Co-authored-by: wit <wit765765346@gmail>
2025-09-08 23:30:09 +08:00
Daniel Liu
900b333241
eth/tracers: add support for block overrides in debug_traceCall #24871 (#1288) 2025-09-08 21:22:09 +08:00
Daniel Liu
44bd05a732
eth/tracers: refactor traceTx to separate out struct logging #24326 (#1278)
* eth/tracers: refactor traceTx to separate out struct logging

review fix

Update eth/tracers/api.go

Co-authored-by: Martin Holst Swende <martin@swende.se>

Mv ExecutionResult type to logger package

review fix

impl GetResult for StructLogger

make formatLogs private

confused exit and end..

account for intrinsicGas in structlogger, fix TraceCall test

Add Stop method to logger

Simplify traceTx

Fix test

rm logger from blockchain test

account for refund in structLogger

* use tx hooks in struct logger

* minor

* avoid executionResult in struct logger

* revert blockchain test changes

Co-authored-by: Sina Mahmoodi <1591639+s1na@users.noreply.github.com>
2025-09-08 20:55:06 +08:00
Daniel Liu
e711a77747
internal: remove eth_{compile,getWork,submitWork} from console #31856 (#1408) 2025-09-03 15:41:09 +08:00
Daniel Liu
eb770486f2
internal: remove unused shh and swarm modules from console #32073 (#1407)
Similar to https://github.com/ethereum/go-ethereum/pull/31856, remove
the not availabe shh, swarm modules in the console.

---------

Co-authored-by: Zhou <DanialZhouMAX@gmail.com>
Co-authored-by: Gary Rong <garyrong0905@gmail.com>
2025-09-03 15:40:28 +08:00
Daniel Liu
e2edc41b50
all: mv loggers to eth/tracers #23892 (#1269) 2025-09-03 15:35:28 +08:00
Daniel Liu
6c5c8c13de
core, trie: rework trie committer #25320 (#1103)
* all: rework trie and trie committer

* all: get rid of internal cache in trie

* all: fixes

* trie: polish

* core, trie: address comments

* trie: fix imports

* core/state: address comments

* core/state/snapshot: polish

* trie: remove unused code

* trie: update tests

* trie: don't set db as nil

* trie: address comments

* trie: unskip test

Co-authored-by: rjl493456442 <garyrong0905@gmail.com>
2025-08-31 15:58:48 +08:00
Daniel Liu
bbc4612d9f
core/state: remove notion of fake storage #24916 (#1219) 2025-08-29 05:24:28 +08:00
Daniel Liu
f561e7664d
internal/ethapi: avoid using pending for defaults #28784 (#1386) 2025-08-28 18:56:00 +08:00
Daniel Liu
98f6825514
eth/tracers: implement debug.intermediateRoots #23594 (#1260) 2025-08-26 15:25:30 +08:00
Daniel Liu
ee1807b75c
internal/web3ext: remove deprecated method debug_seedHash (#1380) 2025-08-26 15:10:26 +08:00
Daniel Liu
6f36533962
all: remove ethash pow 27178 (#1378) 2025-08-26 11:54:01 +08:00
Daniel Liu
917baceda8
ethclient, internal/ethapi: add support for EIP-695 (eth_chainId) #19694 #23778 (#1362)
* ethclient, internal/ethapi: add support for EIP-695 (eth_chainId) #19694

* ethclient: fix typo #23778
2025-08-21 13:40:35 +08:00
Daniel Liu
3fecfcaa76
internal/web3ext: fix eth_call in console #26265 #26266 #26268 (#1329)
* internal/web3ext: fix eth_call stateOverrides in console #26265

* internal/web3ext: fix eth.call regression in console #26266

* internal/web3ext: fix eth_call in console 2 #26268
2025-08-08 10:43:27 +08:00
Daniel Liu
2539836ede
internal/web3ext: add eth_getLogs to console #24297 (#1328) 2025-08-08 10:37:46 +08:00
Daniel Liu
34020969ff
all: simplify timestamps to uint64 #19372 (#1318) 2025-08-08 10:33:37 +08:00
Daniel Liu
36374be05f
eth/tracers: move tracing APIs into eth/tracers #22161 #22473 (#1252) 2025-08-08 10:25:43 +08:00
Daniel Liu
ae58eb9f64
go.mod: upgrade goja #23721 (#1281) 2025-08-04 11:57:13 +08:00
JukLee0ira
b413f71763
all: remove personal RPC namespace #30704 (#1180) 2025-07-02 09:11:58 +08:00
JukLee0ira
69e9f41b4c
all: replace path.Join with filepath.Join #29479 (#1179) 2025-07-01 18:26:02 +08:00
JukLee0ira
87ed24a113
all: update to golangci-lint 1.61.0 #30587 (#1181)
Co-authored-by: Martin Holst Swende <martin@swende.se>
2025-07-01 18:10:05 +08:00