Commit graph

13122 commits

Author SHA1 Message Date
HAOYUatHZ
d91c8c799e
fix(l1fee): use int for CalculateL1Fee (#231)
* fix(l1fee): use floor for `mulByFloat`

* fix(l1fee): use int for `CalculateL1Fee`

* fix(l1fee): use int for `CalculateL1Fee`

* add `TestCalculateL1Fee` (#233)

* update testcase
2023-02-24 09:25:49 +08:00
Haichen Shen
3c5f532ef3
fix: Add l1fee to the balanceCheck (#229)
Add l1fee to the balanceCheck

Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
2023-02-24 08:31:37 +08:00
HAOYUatHZ
96642f5be6
Revert "fix: revert block-on-demand (and use constant block time for … (#226)
Revert "fix: revert block-on-demand (and use constant block time for clique) (#193)"

This reverts commit 5ca70bf3a2.
2023-02-23 06:30:49 +08:00
Péter Garamvölgyi
3fcd77955e
fix GetTransactionReceipt crash when BaseFee is missing (#224) 2023-02-21 18:23:18 +01:00
Nazarii Denha
310c870c6a
set BaseFee to nil (#222)
* set BaseFee to nil

* fix lint

* comment fix

* update genesis.go
2023-02-20 22:04:55 -08:00
HAOYUatHZ
ec9254b0b1
feat: compute rollup gas price for StateTransition (#209)
* init

* more

* more

* add L1BlockContainerAddress

* finish

* add more comments

* rename `UsingSVM` to `UsingScroll`

* update logic

* refactor(rollup): add UsingScroll into ChainConfig

* update

* update comments

* fee=l2fee+l1fee (#221)

add l1fee into calc

* improve

* format note content.

* feat(l1Fee): Add l1Fee in trace. (#223)

* Add l1fee in trace.

* Delete comment.

---------

Co-authored-by: maskpp <maskpp266@gmail.com>
2023-02-20 16:28:43 +08:00
HAOYUatHZ
8a78c736a5
feat(trace): add withdraw trie root (#217)
* init rollup/rcfg/config.go

minor

* update traces struct

* init withdraw_trie.go

* finish

* fix `L2MessageQueueAddress`

* refactor(rollup): add `UsingScroll` into `ChainConfig` (#218)

* update comments

* update comments
2023-02-16 10:18:47 +08:00
Péter Garamvölgyi
30f4f57f07
feat: add block transaction count limit (#216)
* feat: add block transaction count limit

* add tests

* nit
2023-02-15 15:13:03 +08:00
Haichen Shen
e3e0078d1b
feat: upgrade zktrie version to v0.5.0 (#214)
* upgrade zktrie version to v0.5.0

* update go.sum
2023-02-13 13:16:43 +08:00
maskpp
bb26fa3e39
feat(rpc): allow configure WS compression (#210)
* Default open ws compression.

* Default open ws compression.

* Enable ws compression.

* Enable ws compression.

---------

Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
2023-02-10 17:33:43 +08:00
maskpp
8224bc8b9c
feat(rpc.BlockNumber): Add "finalized" and "safe" case in marshal and unmarshal interface. (#213)
Add finalized, safe case
2023-02-10 10:11:39 +01:00
HAOYUatHZ
0854d4bbb1
core, trie, eth, cmd: rework preimage store (#205)
* core, trie, eth, cmd: rework preimage store

* fix ci

* fix ci

* Update zk_trie_database.go

---------

Co-authored-by: rjl493456442 <garyrong0905@gmail.com>
Co-authored-by: maskpp <maskpp266@gmail.com>
2023-02-10 15:26:57 +08:00
Nazarii Denha
aae2ea53df
feat: include fee vault address in trace api result (#208)
* include fee vault address in trace api result

* use fee vault instead of coinbase if exists

* retrigger checks

* Update api_blocktrace_test.go

---------

Co-authored-by: maskpp <maskpp266@gmail.com>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
2023-02-10 15:13:46 +08:00
Nazarii Denha
7c3657b61b
feat: make BLOCKHASH return only last blockhash (#196)
* make BLOCKHASH return only last blockhash

* fix

* small fix
2023-02-10 13:06:42 +08:00
ChuhanJin
98eb664f23
refactor(build): move jenkins files under build/jenkins/ folder (#212)
* move jenkins files

* trigger jenkins

* trigger jenkins

* trigger jenkins

* fix goproxy

---------

Co-authored-by: vincent <419436363@qq.com>
2023-02-10 10:25:35 +08:00
ChuhanJin
f2c39ae574
fix(jenkins): change tag jenkinsfile docker build script (#207)
change

Co-authored-by: vincent <419436363@qq.com>
2023-02-10 09:24:54 +08:00
Péter Garamvölgyi
5caecc87cf
fix: Update baseFee verification logic (#211)
* update baseFee verification logic

* only apply workaround for clique
2023-02-09 16:33:21 +01:00
Ho
3a080e5cb4
test(zktrie): add TestZkTrieDelete (#201)
update zktrie for deletion fix

Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
2023-02-09 21:14:10 +08:00
Péter Garamvölgyi
81e7775aa8
feat: dual code hash (#188)
* add KeccakCodeHash and CodeSize to StateAccount

* update StateAccount marshalling logic

* change emptyCodeHash to poseidon(nil)

* purge StateAccount.hash

* fix/disable failing tests

* change keccak and poseidon hash order in StateAccount

* fix lint

* update l2trace account wrapper

* update eth_getProof response type

* fix eth_getProof response type

* goimports

* update the codehash computation

* update the codehash test cases

* go mod tidy

* fix tests

* use keccak instead of poseidon

* update trace codehash field name

* upgrade zktrie to 4.2

* trigger ci

* update state account marshalling according to spec

* improve generatorStats estimation

* add comment

* upgrade zktrie to 4.3

* go mod tidy

* misc fixes

* fix TestDump

* fix snap sync tests

* handle err in the codehash

* fix tests in snapshot/generate_test.go

* remove prevhash from state journal

* add state_account_marshalling_test.go

* goimports

* add more tests

---------

Co-authored-by: Ho Vei <noelwei@gmail.com>
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
2023-02-08 16:12:41 -08:00
Zhang Zhuo
1fe2d22e29
feat: make eip2718 & eip1559 configurable in txpool (#206)
* txpool only supports legacy tx

* configurable tx pool EIP-2718 && EIP-1559

* try fix CI

* fix CI

* fix metamask incompatibility

* fix comments

* fix CI

* set basefee as 0 when disable eip2718 or eip1559

* fix typo

---------

Co-authored-by: colinlyguo <colinlyguo@gmail.com>
2023-02-03 14:24:15 +08:00
Péter Garamvölgyi
08ba436d8b
patch: Add safe and finalized tags to ethclient SDK (#202)
add safe and finalized tags to ethclient SDK
2023-01-27 08:53:31 +08:00
ChuhanJin
cdaea93962
build(jenkinsfile): add docker image publish job for git tag (#198)
* add tag jenkinsfile

* fix

* msg change

* change

* fix

* change

* trigger

* more precise

* simplify

Co-authored-by: vincent <419436363@qq.com>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
2023-01-13 16:21:26 +08:00
Péter Garamvölgyi
2891916a0f
feat: Add Scroll fee vault address as fee recipient (#187)
* feat: add Scroll fee vault address as fee recipient

* log fee vault address if configured

* lint

* disable fee vault in test presets

* add simple test
2023-01-12 10:11:33 +01:00
Ho
81aafb09f3
[FIX]: zkproof writer handle reading non-existed address (#197)
zkproof writer: fix issue in reading unexist address
2023-01-10 12:48:53 +01:00
HAOYUatHZ
5ca70bf3a2
fix: revert block-on-demand (and use constant block time for clique) (#193)
revert block-on-demand
2022-12-21 15:32:56 +08:00
maskpp
78c1f57fcf
chore(ws): increase ws BufferSize & MessageSizeLimit (#192)
Increase ws cache in rpc module
2022-12-13 11:45:43 +08:00
maskpp
804e7edc23
refactor: rename NewTraceTransaction to NewTransactionData (#190)
rename NewTraceTransaction to NewTransactionData
2022-12-02 14:12:07 +08:00
maskpp
016b30eb7d
refactor(trace): move TransactionData into l2trace.go (#189)
combine trace_block.go
2022-12-02 10:46:26 +08:00
maskpp
4ea77a7577
feat(tx): revert tx trace struct (#186)
revert tx trace struct
2022-11-25 10:56:12 +08:00
maskpp
0bdd2e0575
fix(tx): fix bug in *TransactionData UnmarshalJSON (#184)
* Fix bug for TransactionData json unmarshal

* clean up

Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
2022-11-21 12:37:53 +08:00
maskpp
22963a115d
feat(trace): Add header and upgrade TransactionTrace (#181)
* Add header and upgrade TransactionTrace

* Add header

* change blockResult struct

* rm chainID from TransactionData

* Rename blockResult to blockTrace in everywhere

* fix comments
2022-11-18 17:11:04 +08:00
shu-unifra
f21acfee4a
perf: use fastcache for zktrie node (#172)
* * benchmark add benchmark for zktrie

* * improve: use fastcache for zktrie node
2022-11-14 10:49:36 +08:00
Siyuan Han
ae2ab39570
chore: fix function name typos santiyCheckByte32Key -> sanityCheckByte32Key (#176)
Fix function name typos: santiyCheckByte32Key -> sanityCheckByte32Key
2022-11-11 13:30:59 +08:00
iczc
97394fb0cb
delete unused genesis-keystore (#171)
Delete genesis-keystore

Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
2022-10-31 15:10:53 +08:00
Steven
ee913fa40c
Replace utesting/blocktraces with git-submodule test-traces (#170)
* Replace `utesting/blocktraces` with git-submodule `test-traces`.

* Fix to package utesting.

* Update git-submodile `blocktraces` and update path in test code.
2022-10-31 13:34:20 +08:00
Ho
70af996789
bump zktrie version (#168)
bump zktrie's dep
2022-10-27 20:35:58 +08:00
Péter Garamvölgyi
61e2bdd05f
feat: return 0 for op DIFFICULTY (#167) 2022-10-27 17:31:45 +08:00
Ho
e6500918a0
refactor: adapt to standalone zktrie module (#165)
* adapt zktrie: zktrie part

* adapt unittests

* pass tests

* refactor for new zktrie module

* run go imports
2022-10-17 14:32:42 +08:00
iczc
b3a7c9b691
p2p: define DiscReason as uint8 (#164)
p2p: define DiscReason as uint8 (#24507)

All other implementations store disconnect reasons as a single byte,
so go-ethereum should do it too.

Co-authored-by: Felix Lange <fjl@twurst.com>
2022-10-12 20:05:56 +08:00
Ho
4ee7885525
Fix witness generator for failed call/create op and tx (#146)
* update test examples

* update tests

* solidify account deleting

* update zkwriter for reverting

* solid handling for call, and update test examples

* fix status capture for CREATE issue, update test examples

* add fail case for deploy

* update test example (call non-exist address)

* move test and stuffs to internal path, make required exports

* fix issue in selfdestruct

* update destruct test

* lint

* rename traces
2022-10-10 17:13:24 +08:00
maskpp
ca2e576d81
avoid the unexpected situation (#163) 2022-09-26 10:32:47 +08:00
maskpp
3a7da33cd5
fix: fix not using point for sync.Pool recycling (#158)
fix bug
2022-09-20 15:05:44 +08:00
maskpp
15391eeaf7
feat: add replay blockResult API (#139)
* replay trace

* replay trace

* add sdk

* fix trace test case

* fix bug

* Update eth/tracers/api_blockResult.go

Co-authored-by: Haichen Shen <shenhaichen@gmail.com>

* Update eth/tracers/api_blockResult.go

Co-authored-by: Haichen Shen <shenhaichen@gmail.com>

* Update eth/tracers/api_blockResult.go

Co-authored-by: Haichen Shen <shenhaichen@gmail.com>

* Update eth/tracers/api_blockResult.go

Co-authored-by: Haichen Shen <shenhaichen@gmail.com>

* add comments

* fail the rpc call if get error

* adjust channel length

* fix bug

* fix bug

* remove redundant codes in worker

* add test case

* fix bug

* fix goimports

* Update eth/tracers/api_blockResult.go

Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>

* fix comments

* Update ethclient/ethclient.go

Co-authored-by: Haichen Shen <shenhaichen@gmail.com>

* Update ethclient/ethclient.go

Co-authored-by: Haichen Shen <shenhaichen@gmail.com>

* rm coinbase api in miner

* fix comment

* Update eth/tracers/api.go

Co-authored-by: Haichen Shen <shenhaichen@gmail.com>

* fix comment

Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
2022-09-20 14:30:57 +08:00
Ho
edbb595e66
Trace the account accessed by EXTCODE op (#157)
add account touch by 'EXTCODE' for storeTrace
2022-09-17 22:44:29 -07:00
maskpp
9182a74334
fix logs error tracing (#154)
* fix err handle

* fix err handle

* fix err handle
2022-09-13 11:15:31 +08:00
Péter Garamvölgyi
304af60f50
feat: change bytecode hash function from Keccak to Poseidon (#149)
* feat: change bytecode hash function from Keccak to Poseidon

* fix TestStateProcessorErrors

* rename files

* copy iden3's poseidon package to local

* update poseidon hash

* apply new hash in codehash

* extend hash method, use actual code size as cap

* prune keccak(nil) for empty code

* update empty code hash references to Poseidon

* add TestPoseidonCodeHash

* use keccak for empty code hash

* go mod tidy

* goimports

* use Poseidon code hash in state and sync tests

* run goimports

* run goimports

* remove unnecessary reallocation from CodeHash

* goimports

* move codehash API to separate module

* add missing package

* fix review comments

* improve comments

Co-authored-by: Ho Vei <noelwei@gmail.com>
2022-09-08 06:16:17 +08:00
Péter Garamvölgyi
346bfc82e8
feat: re-enable p2p layer (#152) 2022-09-07 10:00:40 +02:00
maskpp
ff9405b2fa
Update change logs (#125)
* Update changelogs file

* Update changelogs
2022-08-24 23:49:09 -07:00
Péter Garamvölgyi
00ed553a57
feat: disable SELFDESTRUCT opcode in l2geth (#147)
* feat: disable SELFDESTRUCT opcode in l2geth

* remove deadcode
2022-08-22 14:17:57 -07:00
maskpp
01a0618b02
fix: reset trace Error field when finalizing (#143) 2022-08-18 10:22:36 +08:00