Daniel Liu
29ad6db3bd
ci: validate gofmt, tidy, and generated files before test ( #2022 )
...
Check
- gofmt
- go mod tidy
- generated files
before tests.
2026-02-06 14:43:52 +05:30
Daniel Liu
7e12f036cc
refactor(core): harden SetupGenesisBlock flows ( #2019 )
...
- handle missing genesis header/state and validate stored hash
- avoid overwriting unchanged chain config; keep private net config
- extend TestSetupGenesis for missing header/state/config/head cases
2026-02-06 14:41:29 +05:30
Daniel Liu
75c05e5dde
feat(params): start osaka fork #31125 ( #2013 )
2026-02-06 14:40:58 +05:30
Daniel Liu
9dba15a673
feat(core): implement EIP-7623 increase calldata cost 30946 ( #2031 )
...
Link to spec: https://eips.ethereum.org/EIPS/eip-7623
---------
Co-authored-by: Marius van der Wijden <m.vanderwijden@live.de>
Co-authored-by: lightclient <14004106+lightclient@users.noreply.github.com>
Co-authored-by: lightclient <lightclient@protonmail.com>
2026-02-05 14:45:11 +05:30
Daniel Liu
d74c23cca1
perf(core): use uint256 in state #28598 ( #1977 )
2026-02-05 13:59:23 +05:30
Daniel Liu
1655f801d1
core/vm: add read only protection for opcodes #33637 ( #1984 )
2026-02-05 12:57:40 +05:30
Daniel Liu
934c8d0679
perf(all): use big.Int.Sign() to compare with 0 ( #1969 )
2026-02-05 11:45:44 +05:30
Daniel Liu
a51eaa7200
fix(core, trie): revert error removal in (*state.Trie).Commit #27544 ( #1168 )
...
* trie, core/state: revert error removal in (*state.Trie).Commit
* Gary's nitpick :)
---------
Co-authored-by: Guillaume Ballet <3272758+gballet@users.noreply.github.com>
Co-authored-by: rjl493456442 <garyrong0905@gmail.com>
2026-02-05 11:43:33 +05:30
Daniel Liu
d749d54ea5
feate(core, trie): add UpdateContractCode to the Trie interface #27476 ( #1167 )
...
Verkle trees store the code inside the trie. This PR changes the interface to pass the code, as well as the dirty flag to tell the trie package if the code is dirty and needs to be updated. This is a no-op for the MPT and the odr trie.
Co-authored-by: Guillaume Ballet <3272758+gballet@users.noreply.github.com>
2026-02-05 11:43:04 +05:30
Daniel Liu
9cf795c908
perf: improve state reader with error handling and committed flag #27428 ( #1166 )
...
- Add error returns to Database.Reader() and NodeIterator() methods
- Introduce committed flag to prevent usage of tries after commit
- Update callers to handle new error signatures
- Add MustNodeIterator() helper for backward compatibility
Co-authored-by: rjl493456442 <garyrong0905@gmail.com>
2026-02-03 20:55:53 +05:30
Daniel Liu
e77ac510d0
all: replace Div/Mul with Rsh/Lsh if possible #29911 ( #1966 )
2026-01-29 11:31:58 +05:30
Daniel Liu
d12f9803eb
trie: remove parameter 'fromLevel' in Prove #27512 ( #1165 )
...
This removes the feature where top nodes of the proof can be elided.
It was intended to be used by the LES server, to save bandwidth
when the client had already fetched parts of the state and only needed
some extra nodes to complete the proof. Alas, it never got implemented
in the client.
Co-authored-by: rjl493456442 <garyrong0905@gmail.com>
2026-01-29 11:29:02 +05:30
Daniel Liu
a74b7e2466
core/vm: reuse Memory instances #30137 #33056 ( #1974 )
2026-01-29 11:27:13 +05:30
Daniel Liu
84aedaa7bf
core/txpool/legacypool: fix stale counter #33653 ( #1990 )
2026-01-29 11:25:55 +05:30
Daniel Liu
ecb0408521
core/state: ensure deterministic hook emission order in Finalise #33644 ( #1981 )
2026-01-29 11:23:33 +05:30
Daniel Liu
0206909058
core/txpool/legacypool: add metric for accounts in txpool #33646 ( #1980 )
2026-01-29 11:22:31 +05:30
Daniel Liu
ab39386242
core/types: fix panic on invalid signature length #33647 ( #1979 )
...
Replace panic with error return in decodeSignature to prevent crashes on
invalid inputs, and update callers to propagate the error.
Co-authored-by: DeFi Junkie <deffie.jnkiee@gmail.com>
2026-01-27 08:55:23 +05:30
Daniel Liu
105044559b
vm: simplify error handling in vm.EVM.create() #30292 ( #1973 )
2026-01-27 08:54:08 +05:30
Daniel Liu
5190df67d8
core/vm: use uint64 in Memory for indices everywhere #30252 ( #1971 )
2026-01-27 08:53:03 +05:30
Daniel Liu
7c5cd0a0f9
core/vm: improved stack swap performance #30249 ( #1970 )
2026-01-27 08:52:42 +05:30
Daniel Liu
3ce9a1980a
core/vm: fix typo ( #1963 )
2026-01-27 08:46:49 +05:30
Daniel Liu
3518be8c8b
core/state: move slot RLP encoding into the MPT implementation #27000 ( #1162 )
...
Continuing with a series of PRs to make the Trie interface more generic, this PR moves
the RLP encoding of storage slots inside the StateTrie and light.Trie implementations,
as other types of tries don't use RLP.
Co-authored-by: Guillaume Ballet <3272758+gballet@users.noreply.github.com>
2026-01-26 18:04:50 +05:30
Daniel Liu
e40208f3db
trie: new empty trie with types.EmptyRootHash instead of null #27230 ( #1160 )
2026-01-26 18:04:14 +05:30
Daniel Liu
3d194d4303
all: port boring changes from pbss #27176 ( #1158 )
...
* all: port boring changes from pbss
* core, trie: address comments from martin
* trie: minor fixes
* core/rawdb: update comment
* core, eth, tests, trie: address comments
* tests, trie: add extra check when update trie database
* trie/triedb/hashdb: degrade the error to warning
Co-authored-by: rjl493456442 <garyrong0905@gmail.com>
2026-01-26 11:21:46 +05:30
Daniel Liu
43b005c479
txpool: make unreserve idempotent to avoid false non-reserved errors, fix #1975 ( #1976 )
2026-01-26 11:20:33 +05:30
Daniel Liu
a1b0d5476d
core/txpool: add 7702 protection to blobpool #31526 ( #1930 )
2026-01-26 11:20:02 +05:30
Daniel Liu
48b6063261
core/txpool/legacypool: reject gapped tx from delegated account #31430 ( #1928 )
2026-01-21 13:28:23 +05:30
Daniel Liu
96a9c89aa6
core/txpool: move setcode tx validation into legacyPool #31209 ( #1927 )
2026-01-21 11:13:10 +05:30
Daniel Liu
1f3faa5184
all: set gas limit dynamically ( #1945 )
2026-01-21 10:49:20 +05:30
Daniel Liu
c27d49c03e
core/txpool/legacypool: add setCodeTx reorg test #31206 ( #1924 )
2026-01-21 10:48:47 +05:30
Daniel Liu
217b069ec0
core/txpool, types: add support for SetCode transactions #31073 ( #1922 )
2026-01-19 14:19:34 +05:30
Daniel Liu
3742ed7f2f
core/vm: check if read-only in gas handlers #33281 ( #1960 )
2026-01-19 14:05:27 +05:30
Daniel Liu
fcd9685c87
core/vm: return early in selfdestruct gas calculation #33450 ( #1959 )
2026-01-19 14:04:58 +05:30
Daniel Liu
cb48e25ccf
core/txpool: declare address already reserved error #29095 ( #1920 )
2026-01-19 12:18:08 +05:30
Daniel Liu
f0b523d635
core/vm: remove a redundant zero check in opAddmod #29672 ( #1954 )
...
Co-authored-by: Aaron Chen <aaronchen.lisp@gmail.com>
2026-01-19 12:16:20 +05:30
Daniel Liu
6aaad7b72f
core/vm: avoid escape to heap #33537 ( #1944 )
2026-01-19 11:25:04 +05:30
Daniel Liu
3e1f75eafb
core, eth, miner: 4844 blob transaction pool #26940 ( #1911 )
2026-01-19 11:24:01 +05:30
Daniel Liu
583338686f
all: expose block number information to statedb #27753 ( #1936 )
2026-01-16 15:55:04 +05:30
Daniel Liu
283d208fa3
common, core: use min to simplify code ( #1939 )
2026-01-16 15:53:39 +05:30
Daniel Liu
e764d842da
core/txpool/legacypool: narrow down the scope of the variable #27471 ( #1910 )
2026-01-16 15:52:12 +05:30
Daniel Liu
6d4670a4ec
core, trie: refactor trie API #26995 ( #1147 )
...
In this PR, all TryXXX(e.g. TryGet) APIs of trie are renamed to XXX(e.g. Get) with an error returned.
The original XXX(e.g. Get) APIs are renamed to MustXXX(e.g. MustGet) and does not return any error -- they print a log output. A future PR will change the behaviour to panic on errorrs.
Co-authored-by: rjl493456442 <garyrong0905@gmail.com>
2026-01-16 15:51:13 +05:30
Daniel Liu
b743f7c61f
core/state: print db failure in case of mismatched hash root #26870 ( #1938 )
2026-01-16 15:49:27 +05:30
Daniel Liu
939225bd87
core/txpool: improve transaction validate ( #1921 )
2026-01-16 15:45:07 +05:30
Daniel Liu
86cbf4a897
core/txpool/legacypool: handle genesis state missing #28171 ( #1919 )
2026-01-16 15:43:43 +05:30
Daniel Liu
dee0e37564
core/txpool/legacypool: remove outdated tests #27662 ( #1916 )
2026-01-16 15:43:13 +05:30
Daniel Liu
b736bd6967
core/txpool: fix typos ( #1915 )
2026-01-16 15:42:04 +05:30
Daniel Liu
a7050de4f3
core/txpool: remove use of errors.Join function #27523 ( #1914 )
2026-01-13 16:51:57 +05:30
Daniel Liu
a7ddd8ac03
core/txpool/legacypool: remove redundant check for floatingRatio #27477 ( #1913 )
2026-01-13 16:51:21 +05:30
Daniel Liu
4addc980f4
core/txpool/legacypool: reheap the priced list if london fork not enabled #27481 ( #1912 )
2026-01-13 16:51:02 +05:30
Daniel Liu
d38d746773
core/txpool/legacypool: handle missing head in reset #27479 ( #1909 )
2026-01-13 16:49:33 +05:30