andri lim
26a8759c34
implementation of EIP-4844: Shard Blob Transactions ( #1440 )
...
* EIP-4844: add pointEvaluation precompiled contract
* EIP-4844: validate transaction and block header
* EIP-4844: implement DataHash Op Code
* EIP-4844: txPool support excessDataGas calculation
* EIP-4844: make sure tx produce correct txHash
* EIP-4844: node should not automatically broadcast blob tx to it's peers
* EIP-4844: add test cases
* EIP-4844: add EIP-4844 support to t8n tool
* EIP-4844: update nim-eth to branch eip-4844
* fix t8n transaction decoding
* add t8n test data
* EIP-4844: fix blobHash opcode
* disable blobHash test when evmc_enable
2023-06-24 20:56:44 +07:00
jangko
10aabd8ca1
bubble up validate transaction error message
2023-06-12 12:58:53 +07:00
jangko
2871dbfddf
remove unused vmState param from t8n tool
2023-05-11 14:36:32 +07:00
jangko
918c1309c8
fix processTransaction's gasLimit
2023-04-19 12:37:18 +07:00
jangko
12aea42c00
fix t8n's EthAddress parser
2023-04-17 21:32:02 +07:00
jangko
a31db89e0e
fix t8n tool bug and accounts cache bug
...
t8n: a silly bug contract address generator, should use original
tx nonce instead of read the nonce from sender address in state db.
Although in EVM contract address generated by reading nonce from state db
is correct, outside EVM that nonce value might have been modified,
thus generating incorrect contract address.
accounts cache: when clearing account storage, the originalValue
cache is not cleared, only the storageRoot set to empty storage root,
this will cause getStorage and getCommitedStorage return wrong value
if the originalValue cache contains old value.
2023-03-23 11:07:30 +07:00
jangko
0b97f5a2e6
t8n tools support withdrawals records
2023-03-21 18:36:22 +07:00
jangko
2a3c67b4be
refactor touched accounts, selfdestruct, and log
...
simplify EVM and delegete those things to accounts cache.
also no more manual state clearing, accounts cache will be
responsible for both collecting touched account and perform
state clearing.
2023-03-21 08:14:06 +07:00
jangko
633f135c72
align accounts cache with EIP158/161
...
Some nomenclature used in accounts cache are not what described
in EIP158/161, therefore causing confusion and introduce bugs.
Now it should be fixed.
2023-03-18 18:13:06 +07:00
Kim De Mey
73e93f1f11
Reduce Nim 1.6 compiler warnings & hints
...
* Reduce Nim 1.6 compiler warnings/hints for Fluffy and Nimbus proxy
Mostly raises Defect removals, TaintedString removal and some
unnecessary imports.
Also updating the copyright years alongside.
* Further reduce Nim 1.6 compiler warnings/hints for Nimbus
2023-01-31 13:38:08 +01:00
jangko
6814140c63
unify coinbase state clearing of gst, evmstate, and t8n
...
it is troublesome if we have to fix it in three places
in case of a bug, it also reduce code duplication.
2023-01-14 17:17:55 +07:00
jangko
35e4607f87
add more test cases to t8n tool
2022-12-16 07:54:38 +07:00
jangko
9256c741a0
fix evmstate,t8n,txparse build instructions
2022-12-14 21:53:41 +07:00
jangko
1cd4a3fd54
tools: add missing copyright header
2022-12-10 19:53:24 +07:00
jangko
4287a31961
fix t8n compiler switch when evmc_enabled
2022-12-08 13:20:23 +07:00
jangko
a57471197f
update t8n tool testdata
2022-12-08 13:20:23 +07:00
jangko
490b2f8023
fix t8n tool tx and env parser
2022-12-08 13:20:23 +07:00
jangko
05584a21b9
fix t8n 0-touch reward on pre EIP150 networks
2022-12-08 12:20:01 +07:00
jangko
94a94c5b65
implement better hardfork management
2022-12-02 13:51:42 +07:00
jangko
66439d69ca
unify chain config parser of t8n, bc test, and consensus simulator
2022-11-25 12:26:29 +07:00
jangko
7381ee8ff9
t8n tool support --state.reward -1
...
fixes #1313
2022-11-23 19:49:58 +07:00
jangko
c3e8f951b2
enable chronicles runtime filtering of t8n and evmstate tools
2022-11-18 00:56:23 +07:00
jangko
f59e5b63e3
update t8n and evmstate tools readme.md
2022-11-15 10:50:12 +07:00
jangko
12e5b6460e
fix t8n tool copyright banner
2022-11-15 10:49:41 +07:00
jangko
a81b23eb92
add test vector for transition (t8n) tool
2022-10-26 10:57:47 +07:00
jangko
dc9a9a741b
Transition tool a.k.a. t8ntool implementation
2022-10-26 10:57:47 +07:00