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
e2edc41b50
all: mv loggers to eth/tracers #23892 ( #1269 )
2025-09-03 15:35:28 +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
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
34020969ff
all: simplify timestamps to uint64 #19372 ( #1318 )
2025-08-08 10:33:37 +08:00
JukLee0ira
b413f71763
all: remove personal RPC namespace #30704 ( #1180 )
2025-07-02 09:11:58 +08:00
JukLee0ira
c0315121b4
all: replace fmt.Errorf() with errors.New() if no param required #29126 ( #1175 )
2025-07-01 17:46:50 +08:00
JukLee0ira
afa3a4ea5c
cmd, internal/ethapi: avoid panic if keystore is not available #27039 ( #1157 )
2025-06-26 09:14:41 +08:00
JukLee0ira
5ad950ea51
all: Remove concept of public/private API definitions #25053 ( #1141 )
2025-06-24 15:15:25 +08:00
wgr523
e13265a7d7
record total minted into smart contract ( #1026 )
...
* feat: record total minted into smart contract
* feat: GetCurrentTotalMinted API
2025-06-16 02:31:33 -07:00
JukLee0ira
b4308ba733
internal/ethapi: disable sending of non eip155 replay protected tx #22339 ( #971 )
...
* internal/ethapi: disable sending of non eip155 replay protected tx #22339
* eth: optimize the initialization logic of EthAPIBackend
* fix
2025-04-25 11:55:52 +08:00
Daniel Liu
6225b6dd9f
internal/ethapi: accept both hex and decimal for blockCount #23363 ( #957 )
2025-04-24 18:19:02 +08:00
JukLee0ira
b1e08e6642
all: refactor package node #21105 ( #923 )
2025-04-10 18:52:49 +08:00
Daniel Liu
b60396a233
core, internal/ethapi: improve function IsSpecialTransaction
2025-02-20 12:48:17 +08:00
Daniel Liu
0dd3d532fc
eth: add eth_blobBaseFee RPC ( #29140 )
2025-02-10 10:59:45 +08:00
JukLee0ira
d6b136ed7c
consensus, internal, contracts: remove extra hash and string conversions ( #830 )
...
* consensus, internal: remove extra hash conversions
* contracts: remove extra string conversions
2025-02-07 13:59:07 +08:00
Daniel Liu
3f58066879
all: remove debug field from vm config ( #27048 )
2025-02-05 18:16:17 +08:00
Daniel Liu
b6c33b9a14
internal/ethapi, accounts/abi/bind: use errors.Is for error comparison ( #28348 )
...
Co-authored-by: lightclient <lightclient@protonmail.com>
2025-01-24 16:54:12 +08:00
Daniel Liu
593fe53519
internal/ethapi: return revert reason for eth_call ( #21083 )
2025-01-24 16:18:29 +08:00
Daniel Liu
6a7b539c0e
accounts, internal/ethapi: use common Accounts method ( #18428 )
...
* accounts/mananger, internal/ethapi/api: Add new function AllAccounts on account manager to remove the duplication code on getting all wallets accounts
* Rename to Accounts
* Rename to AllAccounts
2025-01-24 16:18:29 +08:00
Daniel Liu
07935ce124
accounts: support for external signer API ( #18079 )
2025-01-24 16:18:29 +08:00
Daniel Liu
fe14069bd7
accounts: support for external signer API ( #18079 )
2025-01-24 16:18:29 +08:00
JukLee0ira
653b59710e
core/rawdb: separate raw database access to own package ( #16666 #19345 )
2025-01-22 15:19:39 +08:00
Daniel Liu
6e33633d28
common: drop BigMin and BigMax, they pollute our dep graph ( #30645 )
2024-12-28 09:06:31 +08:00
Daniel Liu
6ec35b9644
all: get rid of custom MaxUint64 and MaxUint64 ( #30636 )
2024-12-28 09:06:31 +08:00
Daniel Liu
59b14ed2cb
internal/ethapi: make NewAccount return EIP-55 format ( #26973 )
2024-12-28 09:06:31 +08:00
Daniel Liu
d6d6906881
internal: add db operations to api ( #24739 )
2024-12-28 09:06:30 +08:00
JukLee0ira
517f4a16a6
internal/ethapi: fix Call handle revert error
2024-12-28 09:02:48 +08:00
JukLee0ira
48d1f22fde
all: simplify function TransitionDb ( #20830 )
2024-12-28 09:02:48 +08:00
JukLee0ira
7491a7ba74
all: improve EstimateGas API ( #20830 )
2024-12-21 14:35:44 +08:00
Daniel Liu
ad5e7d6db3
crypto: add SignatureLength constant and use it everywhere ( #19996 )
2024-12-09 17:48:59 +08:00
Daniel Liu
416e5ac00f
eth/tracers,internal/ethapi: use correct baseFee when BlockOverrides is provided in call/traceCall ( #29051 )
2024-11-01 11:36:53 +08:00
Daniel Liu
bc14c672f2
internal/ethapi: support unlimited rpc gas cap in eth_createAccessList ( #28846 )
2024-11-01 11:36:53 +08:00
Daniel Liu
f23e1a648c
internal/ethapi: implement eth_getBlockReceipts ( #27702 )
2024-11-01 11:36:53 +08:00
Daniel Liu
419f81f022
eth/gasprice: change feehistory input type from int to uint64 ( #26922 )
2024-11-01 11:36:53 +08:00
Daniel Liu
b8236888d4
internal/ethapi: avoid int overflow in GetTransactionReceipt ( #26911 )
2024-11-01 11:36:53 +08:00
Daniel Liu
2a9d450101
core/types: add EffectiveGasPrice in Receipt ( #26713 )
2024-11-01 11:36:53 +08:00
Daniel Liu
9b20ac785e
consensus/misc: move eip1559 into a package ( #27828 )
2024-11-01 11:36:53 +08:00
Daniel Liu
c668279c48
internal/ethapi: don't estimate gas if no limit provided in eth_createAccessList ( #25467 )
2024-11-01 11:36:53 +08:00
Daniel Liu
9535b3ade5
ethclient: add FeeHistory support ( #25403 )
2024-11-01 11:36:53 +08:00
Daniel Liu
77e2ad90cf
internal/ethapi: add comment explaining return of nil instead of error ( #25097 )
2024-11-01 11:36:53 +08:00
Daniel Liu
48616d5d4b
internal/ethapi/api: return maxFeePerGas for gasPrice for EIP-1559 txs ( #23345 )
2024-11-01 11:36:53 +08:00
Daniel Liu
62a70f0cde
internal/ethapi: fix panic in accesslist creation ( #23225 )
2024-11-01 11:36:52 +08:00
Daniel Liu
7500b0ac95
Use hexutil.Uint for blockCount parameter and oldestBlock result value in feeHistory method ( #23239 )
2024-11-01 11:36:52 +08:00
Daniel Liu
5b01b23af6
internal: get pending and queued transaction by address ( #22992 )
2024-11-01 11:36:52 +08:00
Daniel Liu
93dd33b607
internal/ethapi: fix transaction APIs ( #23179 )
2024-11-01 11:36:52 +08:00
Daniel Liu
5766ca4520
eth/gasprice, internal/ethapi: minor feehistory fixes ( #23178 )
2024-11-01 11:36:52 +08:00
Daniel Liu
5d4ad88364
internal/ethapi: fix panic in access list creation ( #23133 )
2024-11-01 11:36:52 +08:00
Daniel Liu
26fe46c008
eth/gasprice: implement feeHistory API ( #23033 )
2024-11-01 11:36:52 +08:00
Daniel Liu
b02922fc53
core, internal: expose effectiveGasPrice in receipts ( #23050 )
2024-11-01 11:36:52 +08:00
Daniel Liu
18bc355e89
core, internal: support various eth_call invocations post 1559 ( #23027 )
2024-11-01 11:36:52 +08:00
Daniel Liu
4c096de9b0
all: rename internal 1559 gas fields ( #23010 )
2024-11-01 11:36:52 +08:00
Daniel Liu
bfd1c0c9e0
core, eth, internal, les: RPC methods and fields for EIP 1559 ( #22964 )
2024-11-01 11:36:52 +08:00
Daniel Liu
e18553b855
all: implement eip-1559 ( #22837 )
2024-11-01 11:36:52 +08:00
liam.icheng.lai
59a7eb1f9f
resolve conflict from master
2024-10-30 16:47:26 -07:00
Daniel Liu
dd6822bc3c
internal/ethapi, contracts/trc21issuer: fix staticcheck warning SA1012: pass nil Context
2024-10-25 18:29:08 +08:00
Daniel Liu
a79411fa06
all: fix staticcheck warning ST1005: incorrectly formatted error string
2024-10-24 09:48:20 +08:00
Liam Lai
22fc7d0710
fix conflict
2024-10-16 22:42:53 -07:00
benjamin202410
eb6d53adf6
Fix getCandidateStatus API ( #663 )
...
* Fix getCandidateStatus API
* sync vote message and fix test
* update function name
---------
Co-authored-by: Liam Lai <liam@home>
2024-10-09 22:05:14 -07:00
Daniel Liu
edace6ac6c
all: change format 0x%x to %#x ( #25221 )
2024-09-27 15:24:31 +08:00
JukLee0ira
138ac7c967
internal/ethapi: merge CallArgs and SendTxArgs ( #22718 )
2024-08-21 15:15:53 +08:00
Daniel Liu
45e57e41b4
internal/ethapi: refactor func ToMessage for CallArgs
2024-08-21 15:15:53 +08:00
wgr523
52077f18f3
support for golang tracers + add golang callTracer ( #558 )
...
* feat: rename Tracer interface to EVMLogger;
minor changes in API
refine api_tracer.go
refine Tracer interface
* fix: broken tracer tests
* feat: add BenchmarkTransactionTrace
* feat: tracer CaptureEnter CaptureExit in evm
* feat: upgrade js tracers with geth upstream
* chore: clean test
* feat: eth/tracers: support for golang tracers + add golang callTracer
cf. https://github.com/ethereum/go-ethereum/pull/23708
* chore: clean testdata json
* fix: change test due to IntrinsicGas is not upgraded
* feat: make native Tracer the default Tracer
* fix: update tracers.New in api
* fix: addr prefix in callTracer
* fix: remove `native` in BenchmarkTracers
* fix: return consensus error of InsufficientBalance for tx, instead of vmerr
* chore: drop js tracers: call and noop
2024-08-06 00:14:04 -07:00
Daniel Liu
4976b7cbb3
Fix some panic cuased by nil block, statedb, header ( #578 )
...
* fix panic during rollback
* eth/hooks: check nil stateDB to fix issue #271
* internal/ethapi: fix eth_call crash
* all: check nil statedb
* eth: check nil block for tracer api
* internal/ethapi: check nil header and block
2024-08-02 17:05:53 -07:00
Daniel Liu
824c531324
make MasternodeVotingSMC tx never timeout ( #598 )
2024-08-02 16:20:24 -07:00
Daniel Liu
a0081d998b
make MasternodeVotingSMC tx never timeout ( #595 )
2024-08-02 16:19:22 -07:00
Liam
4b35f33559
Fix crash during reorg for v2.0.0 ( #590 ) ( #593 )
...
* params: fix usage of IsXDCxDisable
* internal/ethapi: fix nil block in function DoCall during reorg
Co-authored-by: Daniel Liu <139250065@qq.com>
2024-07-29 07:19:19 -07:00
Daniel Liu
438341c2ea
Fix crash during reorg for v2.0.0 ( #590 )
...
* params: fix usage of IsXDCxDisable
* internal/ethapi: fix nil block in function DoCall during reorg
2024-07-27 07:16:26 -07:00
Daniel Liu
341ca00b16
internal/ethapi: cap txfee for SignTransaction and Resend ( #21231 )
2024-06-20 15:52:32 +08:00
Daniel Liu
0063c14ed3
cmd, eth, internal, les: add gasprice cap ( #21212 )
2024-06-20 15:52:32 +08:00
JukLee0ira
2d89951e5b
all: use errrors.New instead of empty fmt.Errorf
2024-06-14 19:19:21 +08:00
JukLee0ira
0aab4ced98
common: add binary variables for system contract
2024-06-06 19:33:59 +08:00
wgr523
65d7e6a060
Merge pull request #548 from XinFinOrg/trie-proof
...
GetTransactionAndReceiptProof API
2024-05-22 15:17:35 +08:00
Gerui Wang
2d70c0c3a1
GetTransactionAndReceiptProof API
...
web3ext.go
2024-05-21 23:06:25 +08:00
JukLee0ira
c928c79d95
ethapi: implement eth_getBlockReceipts ( #27702 )
2024-05-21 18:03:15 +08:00
Gary
0245344338
add TraceCall, backend.StateAtBlock(), RPCGasCap
...
update gen_config.go by tool `gencodec`
2024-05-17 21:34:34 +08:00
Daniel Liu
7a95b4f907
core, eth, internal/ethapi: create access list RPC API ( #22550 )
2024-05-14 23:27:23 +08:00
Daniel Liu
01e1728a94
all: add support for EIP-2718, EIP-2930 transactions ( #21502 )
2024-05-14 23:15:35 +08:00
Daniel Liu
48f9bbed50
core: types: less allocations when hashing and tx handling ( #21265 )
2024-05-13 22:07:03 +08:00
Gerui Wang
0f96fc89aa
feat: extend eth_estimateGas api with state override
2024-05-01 16:27:11 +08:00
Wang Gerui
4178a97560
feat: extend eth_call api with state override;
...
extend statedb and state_object with necessary code
2024-04-30 15:57:42 +08:00
Daniel Liu
9de40946cf
rename function doCall and doEstimateGas
2024-04-07 11:07:40 +08:00
Daniel Liu
4616d59935
internal/ethapi: support block number or hash on state-related methods ( #19491 )
...
* Support for EIP-1898.
2024-03-12 10:40:03 +08:00
Daniel Liu
ece58f00b5
ethapi: add method eth_getAccountInfo
2024-03-06 14:11:15 +08:00
Daniel Liu
fa36b1ce66
internal/ethapi: early exit for plain transfer
2024-02-18 11:59:40 +08:00
Daniel Liu
d84e0b5ad2
internal/ethapi: estimate tx gas for EOA and arbitrary data ( #340 )
2024-02-18 11:59:40 +08:00
Liam
47bfdf7635
Move masternode in v2 config ( #372 )
...
* move masternode in v2 config
* update number to meet 7 vote for current setup
* add test
* update all failed test
* fix test
* remove comment
* remove comment
* fix test
2023-11-29 11:11:58 +11:00
Liam
ac404683b3
Merge pull request #365 from XinFinOrg/bump-go-v2
...
Bump go v1.21
2023-11-21 23:44:14 +11:00
Liam Lai
824d7b232f
resolve conflict
2023-11-20 23:53:49 +11:00
Daniel Liu
ce091e7b9c
internal/ethapi: EstimateGas support parameter blockTag ( #326 )
2023-11-16 10:24:42 +08:00
Liam
84994df759
Merge pull request #351 from XinFinOrg/bump-golang-1.21
...
Bump golang 1.21
2023-11-07 10:35:42 +11:00