go-ethereum/core
Sina Mahmoodi bf693228a3
eth/tracers/js: goja tracer (#23773)
This adds a JS tracer runtime environment based on the Goja VM. The new
runtime replaces the duktape runtime, which will be removed soon.

Goja is implemented in Go and is faster for cases where the Go <-> JS
transition overhead dominates overall performance. It is faster because
duktape is written in C, and the transition cost includes the cost of using
cgo. Another reason for using Goja is that go-duktape is not maintained
anymore.

We expect the performace of JS tracing to be at least as good or better with
this change.
2022-05-18 16:34:18 +02:00
..
asm all: use strings.EqualFold for string comparison (#24890) 2022-05-17 13:56:52 +02:00
beacon eth/catalyst: set the correct LatestValidHash (#24855) 2022-05-17 12:32:55 +03:00
bloombits all: fix some go-critic linter warnings (#23709) 2021-10-13 17:31:02 +02:00
forkid eth/catalyst: implement kintsugi-spec v3 (#24067) 2021-12-17 15:38:58 +01:00
rawdb core, eth, internal, rpc: implement final block (#24282) 2022-05-18 17:30:42 +03:00
state core/state/snapshot: fix race condition (#24685) 2022-05-06 17:20:41 +02:00
types core/types: fix unhandled errors in TestTransactionCoding (#24692) 2022-04-27 10:56:50 +02:00
vm eth/tracers/js: goja tracer (#23773) 2022-05-18 16:34:18 +02:00
.gitignore
bench_test.go core: fix benchmark panic (#24657) 2022-04-12 11:34:07 +03:00
block_validator_test.go all: core rework for the merge transition (#23761) 2021-11-26 13:23:02 +02:00
block_validator.go cmd, core, eth, miner: deprecate miner.gastarget flag (#23213) 2021-08-10 11:28:33 +03:00
blockchain_insert.go eth/downloader: implement beacon sync (#23982) 2022-03-11 14:14:45 +02:00
blockchain_reader.go core, eth, internal, rpc: implement final block (#24282) 2022-05-18 17:30:42 +03:00
blockchain_repair_test.go all: use T.TempDir to create temporary test directories (#24633) 2022-04-08 15:44:55 +02:00
blockchain_sethead_test.go all: use T.TempDir to create temporary test directories (#24633) 2022-04-08 15:44:55 +02:00
blockchain_snapshot_test.go all: use T.TempDir to create temporary test directories (#24633) 2022-04-08 15:44:55 +02:00
blockchain_test.go core: recover state when beacon sets canonical head if it's missing (#24613) 2022-05-05 10:36:26 +03:00
blockchain.go core, eth, internal, rpc: implement final block (#24282) 2022-05-18 17:30:42 +03:00
blocks.go core: typos and comments improve 2017-05-25 17:14:33 +03:00
bloom_indexer.go eth: move eth.Config to a common package (#22205) 2021-02-05 13:51:15 +01:00
chain_indexer_test.go core: fix potential race in chainIndexerTest (#22346) 2021-03-19 13:32:57 +01:00
chain_indexer.go all: make logs a bit easier on the eye to digest (#22665) 2021-04-15 20:35:00 +03:00
chain_makers_test.go cmd, core, eth: background transaction indexing (#20302) 2020-05-11 18:58:43 +03:00
chain_makers.go eth: request id dispatcher and direct req/reply APIs (#23576) 2021-11-26 13:26:03 +02:00
dao_test.go accounts/abi/bind: fix bounded contracts and sim backend for 1559 (#23038) 2021-06-15 13:56:14 +03:00
error.go core/vm: implement EIP-2681: Limit account nonce to 2^64-1 (#23853) 2021-11-11 15:00:58 +01:00
events.go eth/filters: remove use of event.TypeMux for pending logs (#20312) 2019-12-10 12:39:14 +01:00
evm.go core/evm: RANDOM opcode (EIP-4399) (#24141) 2022-01-10 09:44:21 +02:00
forkchoice.go all: core rework for the merge transition (#23761) 2021-11-26 13:23:02 +02:00
gaspool.go miner: avoid unnecessary work (#15883) 2018-01-15 12:57:06 +02:00
gen_genesis_account.go tests: update for London (#22976) 2021-06-07 14:37:56 +02:00
gen_genesis.go core: change baseFee into baseFeePerGas in genesis json 2021-06-14 14:04:44 +02:00
genesis_alloc.go core, params: add kiln flag (#24548) 2022-03-17 17:34:22 +02:00
genesis_test.go core: store genesis allocation and recommit them if necessary (#24460) 2022-03-22 10:53:22 +01:00
genesis.go build: add imports for go generate tools (#24682) 2022-04-12 20:24:02 +02:00
headerchain_test.go all: core rework for the merge transition (#23761) 2021-11-26 13:23:02 +02:00
headerchain.go core: recover state when beacon sets canonical head if it's missing (#24613) 2022-05-05 10:36:26 +03:00
mkalloc.go all: add go:build lines (#23468) 2021-08-25 18:46:29 +02:00
rlp_test.go core: fix benchmark tests (#23803) 2021-10-27 13:08:51 +02:00
state_prefetcher.go all: removed blockhash from statedb (#23126) 2021-06-30 15:17:01 +02:00
state_processor_test.go core/vm: implement EIP-2681: Limit account nonce to 2^64-1 (#23853) 2021-11-11 15:00:58 +01:00
state_processor.go all: removed blockhash from statedb (#23126) 2021-06-30 15:17:01 +02:00
state_transition.go core,eth: implement tx-level hooks for tracers (#24510) 2022-03-31 11:51:44 +02:00
tx_cacher.go Comment error (#18303) 2018-12-14 11:15:31 +01:00
tx_journal.go all: use common.FileExist for checking file existence (#24748) 2022-04-27 11:48:02 +02:00
tx_list_test.go core: fix benchmark tests (#23803) 2021-10-27 13:08:51 +02:00
tx_list.go core: fixed stale comment in txlist (#23825) 2021-10-28 14:59:51 +02:00
tx_noncer.go core: more efficient nonce-update in txpool (#22231) 2021-11-02 18:32:23 +01:00
tx_pool_test.go all: replace uses of ioutil with io and os (#24869) 2022-05-16 11:59:35 +02:00
tx_pool.go core: ignore basefee when comparing with pool gasprice in txpool (#24080) 2021-12-17 15:44:57 +01:00
types.go core: prefetch next block state concurrently 2019-04-01 11:06:15 +03:00