Péter Garamvölgyi
1dedddbffb
feat: address system contract consensus issues and comments ( #1126 )
...
* feat: address system contract consensus issues and comments
* fix Euclid header chain verification
2025-03-02 21:01:28 +01:00
colin
60cbf64f9c
feat: add EIP-7702 ( #1112 )
...
* feat: add EIP-7702
* fix goimport
* add unit tests
* add api test
* sync txpool update
* update generated code
* make code readable
* fix goimport
* fix TestAsyncChecker unit test
* add AuthorizationList in fuzz tests for completeness sake
* add EuclidV2 test, EIP-7702 transaction in TestT8n
* clean up logs
* bump version
* fix TestAsyncChecker
* Revert "fix TestAsyncChecker"
This reverts commit 314478303d4a504a3948bd6595568916ba7d82f0.
* accept eip-7702 txns only after enabling eip-7702
* revert IntrinsicGas param name from setCodeAuthorizations to authList
* fix a bug
* align upstream implementation in Encoding Receipts
* fix one test case
* fix tracer
* return precode copy
* support setcode tx in EstimateGas and add unit tests
* add TestValidateAuthorizations
* poseidon hash fix
* migrate a fix before the fix pr is merged
* support setcode type transactions in TransactionData
* chore: auto version bump [bot]
* add a nonce-gapped-auth-does-not-block-pending-tx unit test
* make the auth invalid
* Apply suggestions from code review
* change usedAndLeftSlots and knownConflicts to util functions
* add comments about different return of applyAuthorization
* remove gencodec:required in transaction signatures
* fix goimport
* update StructLogger and AccessListTracer
* fix a bug
* fix flaky test
---------
Co-authored-by: colinlyguo <colinlyguo@users.noreply.github.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2025-02-25 14:56:51 +01:00
Ömer Faruk Irmak
4bdf6d096c
feat: Add support for L1 MPT ( #1104 )
...
* Allow using MPT
* Load leaves and compare in-memory
* Update api.go
* remove checker
* chore: auto version bump [bot]
---------
Co-authored-by: omerfirmak <omerfirmak@users.noreply.github.com>
2025-02-05 14:57:40 +01:00
colin
d2fe42ba8f
internal/ethapi: eth_call block parameter is optional ( #28165 ) ( #1095 )
...
* internal/ethapi: eth_call block parameter is optional (#28165 )
So apparently in the spec the base block parameter of eth_call is optional.
I agree that "latest" is a sane default for this that most people would use.
* chore: auto version bump [bot]
---------
Co-authored-by: Sina Mahmoodi <1591639+s1na@users.noreply.github.com>
Co-authored-by: colinlyguo <colinlyguo@users.noreply.github.com>
2024-12-03 14:32:37 +08:00
Morty
9fff27e4f3
fix(api): change gas_price to use pending block ( #1082 )
...
* fix(api): change gas_price to use pending block
2024-10-29 16:07:33 +08:00
colin
cf1ca84e0e
feat: allow changing L1 synced height via admin RPC/CLI ( #1044 )
...
* feat: allow changing L1 synced height via RPC/CLI
* chore: auto version bump [bot]
* fix typos
* add height validity check
* change implementation
* moved hotfix apis from ScrollAPI to PrivateAdminAPI
* change namespace from scroll to admin
* fix bugs
* add locks
* add a lock to protect latestProcessedBlock and db state
* revert some changes
* remove lock and use atomic in latestProcessedBlock
* fix CI
* tweak
* use cas in updating latestProcessedBlock
* renaming
* also update sync height in error paths
* fix a bug
* use mutex lock
---------
Co-authored-by: colinlyguo <colinlyguo@users.noreply.github.com>
2024-09-25 03:18:37 +08:00
Ömer Faruk Irmak
89639dd74a
feat: allow triggering one-off CCC on a block ( #1043 )
...
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2024-09-17 18:18:23 +03:00
Ömer Faruk Irmak
521a074f60
feat: allow removing txns from pool via CLI/RPC ( #1041 )
2024-09-16 13:56:11 +03:00
Ömer Faruk Irmak
50a6bc6f42
feat: make descartes a timestamp based fork ( #852 )
...
* feat: make descartes a timestamp based fork
* chore: auto version bump [bot]
---------
Co-authored-by: omerfirmak <omerfirmak@users.noreply.github.com>
2024-06-26 12:35:04 +08:00
Ömer Faruk Irmak
316138099f
refactor: remove unused storage traces ( #819 )
2024-06-14 15:02:00 +03:00
Péter Garamvölgyi
81074f58d8
feat: implement eth_getBlockReceipts ( #796 )
...
* internal/ethapi: implement eth_getBlockReceipts (#27702 )
* chore: auto version bump [bot]
* chore: auto version bump [bot]
---------
Co-authored-by: Delweng <delweng@gmail.com>
Co-authored-by: Thegaram <Thegaram@users.noreply.github.com>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: Ömer Faruk Irmak <omerfirmak@gmail.com>
Co-authored-by: omerfirmak <omerfirmak@users.noreply.github.com>
2024-06-05 15:19:57 +02:00
Péter Garamvölgyi
bfe803001b
feat: update L1 data fee in Curie hard fork ( #755 )
...
* update fee calculation
* add missing GPO slots to trace
* add placeholder for contract update logic
* nit
* update fee calculation
* update formula
* update GPO slots
* update L1GPO bytecode
* apply Curie in new worker
* move bytecode to config
* create an empty block for curie hard fork
* initialize L1GasPriceOracle storage slots
* add comments
* add test
* add IsCurie to traces and tests
* group GPO storage slots into a struct
* update unit test
* chore: auto version bump [bot]
* trigger ci
* update bytecode
* remove leading 0x
* update comments
* include rollup fee tests in CI
---------
Co-authored-by: Ömer Faruk Irmak <omerfirmak@gmail.com>
Co-authored-by: Thegaram <Thegaram@users.noreply.github.com>
2024-05-28 14:12:39 +02:00
Ömer Faruk Irmak
c7990a3eb1
feat(worker): pipeline block building ( #735 )
2024-05-21 16:11:06 +03:00
Péter Garamvölgyi
0f0cd99f7a
feat: update upcoming fork names ( #680 )
...
* feat: update upcoming fork names
* bump version
* Apply suggestions from code review
Co-authored-by: Nazarii Denha <dengaaa2002@gmail.com>
* bump version
---------
Co-authored-by: Nazarii Denha <dengaaa2002@gmail.com>
2024-03-26 14:41:32 +00:00
Péter Garamvölgyi
ccec84ce63
feat: re-enable EIP-1559 in Banach hard fork ( #634 )
...
* feat: re-enable EIP-1559 in Banach hard fork
* enable BASEFEE opcode
* do not double gas limit on Banach fork block
* do not burn base fee
* update base fee calculation logic
* fix gas price oracle
* fix ethapi backend
* typo
* reorder worker code
* update genesis base fee
* add MaximumL2BaseFee
* add base fee metrics
* handle nil base fee
* revert state-transition change
* bump version
* remove TODO
* update test
* fix typo
* fix typo
* update traces
* fix test
* update london to banach
* handle error
* bump version
* bump version
2024-03-11 13:57:52 +00:00
colin
a807a41fd1
fix(txJSON): L1 message type MarshalJSON ( #630 )
...
* fix(txJSON): L1 message type MarshalJSON
* address comments
* bump version
* trigger ci
* bump version
* bump version
2024-03-05 20:12:10 +08:00
HAOYUatHZ
f4b247da15
feat: add scroll_getTxBlockTraceOnTopOfBlock API ( #558 )
...
* init
* more
* fix draft
* refactor
* fix
* clean up
* minor
* fix
* fix
* clean up
* clean up
* improve
2023-11-20 13:59:20 +08:00
colin
1bf26286db
feat(rpc): add scroll_* rollup APIs ( #548 )
...
* feat(rpc): add scroll_* rollup APIs
* address comments
* address comments
* address comments
* support finalized tag in eth_feeHistory
* Update internal/web3ext/web3ext.go
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* tweak
---------
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-11-09 09:55:13 +01:00
colin
bbf42042e2
fix: eth_estimateGas error in zero balance address ( #537 )
...
* fix: eth_estimateGas zero balance error
* bump version
* revert irrelevant auto format
* remove isEstimateGas in DoCall
* fix CI
* bump version
---------
Co-authored-by: maskpp <maskpp266@gmail.com>
2023-10-25 11:52:40 +02:00
Péter Garamvölgyi
7de261b1be
feat: store skipped transactions in local db ( #467 )
...
* feat: store skipped txs in local db
* bump version
* bump version
* fix test
* include L2 txs in skipped index
* goimports
* rename more
* bump version
* fix missed renames
* fix the bug when calculating l2TxCount. (#479 )
* fix bug when calculate l2 tx count
* Update version
* fix: exclude L1 message from block payload size validation (#476 )
* fix: exclude L1 message from block payload size validation
* fix the bug when calculating l2TxCount. (#479 )
* fix bug when calculate l2 tx count
* Update version
* bump version
---------
Co-authored-by: maskpp <maskpp266@gmail.com>
* fix: update row estimation with scroll-prover `v0.7.2` (#475 )
* Fix row estimation.
* Update libzkp.
* more
* prepare
* finish
* upgrade
* bump version
* fix tests
* Update to scroll-prover `v0.7.2`.
* fix tests
* Update miner/worker.go
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* Update miner/worker.go
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* Reset ccc when skips first tx.
* do not unnecessarily skip L1 message
* fix ccc reset and improve code readability
* seal block on circuitcapacitychecker.ErrUnknown
---------
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* refactor: simplify ccc revert to snapshot (#480 )
* simplify ccc revert to snapshot
* Update version.go
---------
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
* feat: use --gcmode=archive and --cache.noprefetch=true by default (#482 )
* feat: use --gcmode=archive and --cache.noprefetch=true by default
* refuse to start with invalid config
* lint
* lint
* feat(sdk): support compressed response (#469 )
* enable use compression algorithm
* fix ci
* Just enable decode compressed content at ethclient
* fix comments
---------
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* fix: disable pruning and prefetch if not flags are provided (#483 )
Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>
* fix: update libzkp to use scroll-prover `v0.7.5` (#484 )
* Update libzkp to use scroll-prover `v0.7.5`.
* Update version.
* address comments
* bump version
* nit
---------
Co-authored-by: maskpp <maskpp266@gmail.com>
Co-authored-by: Steven <asongala@163.com>
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
Co-authored-by: iczc <iczcalan@gmail.com>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>
2023-08-25 15:41:05 +02:00
Nazarii Denha
7b75f163b0
feat(rpc): add scroll_getBlockByNumber ( #413 )
...
* add scroll_getBlockByNumber rpc api
* bump version
* fix
* bump version
* Update version.go
* Revert "Update version.go"
This reverts commit 1be1d9c4fdbb64254659ac193cffd23dbbacfb5e.
---------
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
2023-08-01 15:32:12 +02:00
Nazarii Denha
3943547960
feat(rawdb&rpc): add block row consumption rpc ( #388 )
...
* add db api for rowconsumption
* add rpc api for block row consumption
* return nil if rc is is not known
* add method to sdk
* bump version
* small fix
* update version
---------
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-07-11 22:07:09 +08:00
Péter Garamvölgyi
38a6a1e964
fix: include L1MessageTx fields in transaction RPC result ( #375 )
...
* fix: include L1MessageTx fields in tx RPC result
* bump version
2023-06-30 15:52:57 +02:00
HAOYUatHZ
f055f50f9d
feat: update l1fee calculation ( #351 )
2023-06-13 10:57:59 +08:00
Péter Garamvölgyi
983d630244
feat: Sync and relay L1 messages ( #350 )
...
* add l1 config in genesis config (#249 )
* add l1 config in genesis config
* fix lint
* Update params/config.go
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
---------
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
* extend node configuration (#251 )
* extend node configuration
* use block number instead of hash
* accept safe, finalized and numbers for L1Confirmations
* fix typos
---------
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* Fix/improve node config parsing (#260 )
* raise error on failed parsing
* default value
* add l1-message-type, transaction methods (#252 )
* add l1-message-type, transaction methods
* goimports
* Update core/types/transaction.go
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
* txpool l1 check, pointer change, marhsal test
* draft: start implementing l1message gas behavior
* draft: start implementing l1message gas behavior
* change to gas usage
* error comment typo
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* goimports
* update nonce, add hash test (fails), marshal test
* goimports
* target addr cant be nil
* change call msg
* comment out test
* lint
---------
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* Add L1 message database (#255 )
* add l1-message-type, transaction methods
* goimports
* Update core/types/transaction.go
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
* add L1 message store to rawdb
* remove comments
* rename to l1_message
* rename variables and add comments
* write l1 msgs in a batch
* add more comments
* update tests
* allow batched and non-batched writes
* rename to accessors_l1_message
* handle error
* add range check
* fix tests
* update comments
* nit
* support blocks with 0 l1 messages
---------
Co-authored-by: Max Wolff <maxcwolff@gmail.com>
Co-authored-by: Max Wolff <max@scroll.io>
* Fix L1Message Deep Copy, Complete Bridge Tx Hash test (#269 )
* deep copy value field, add tx hash test
comment
* typo
* Rename nonce to queueindex, increment sender nonce on L1 message execution (#271 )
* change nonce to queueindex, increment nonce on L1 message
* fix db acccessors
* Update core/types/transaction_marshalling.go
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
---------
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
* Fix db inspect command (#276 )
fix db inspect command
* Add l1 sync service (#256 )
* extend node configuration
* add l1-message-type, transaction methods
* goimports
* Update core/types/transaction.go
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
* use block number instead of hash
* accept safe, finalized and numbers for L1Confirmations
* add L1 message store to rawdb
* remove comments
* fix typos
* add L1 message sync service
* use l1 contract address and chain ID
* use L1DeploymentBlock
* add confirmation config
* move bridge client to separate file
* use uint64 block number
* fix bigint comparison
* rename constants
* add more logs
* rename to l1_message
* rename variables and add comments
* write l1 msgs in a batch
* add more comments
* update tests
* allow batched and non-batched writes
* rename to accessors_l1_message
* handle error
* check if config is provided
* improve sync service DB batched writes
* add range check
* fix tests
* update comments
* nit
* fix flush range and improve comments
* solve circular dependency
* update stress tests
* initialize l1 client for geth
* start sync service
* add more comments
* check nil correctly
* address comments
* fix merge
* fix genesis l1config deserialization
* add sync progress logs
* initial sync
* handle leveldb not found error
* use errors.Is
* address comments
* update DefaultPollInterval
---------
Co-authored-by: Nazarii Denha <dengaaa2002@gmail.com>
Co-authored-by: Max Wolff <maxcwolff@gmail.com>
Co-authored-by: Max Wolff <max@scroll.io>
* Add L1 message validation (#272 )
* add L1 message validation
* add comments and better error handling
* handle leveldb not found error
* update incorrect condition for genesis block
* typo
* change inclusion index logic
* disable L1 message check for legacy tests
* set NumL1MessagesPerBlock to 0 in tests
* update default genesis config
* Add L1 msg validation tests (#303 )
add L1 msg validation tests
* Update miner include l1 messages (#265 )
* add l1-message-type, transaction methods
* goimports
* Update core/types/transaction.go
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
* add L1 message store to rawdb
* add L1 message sync service
* remove comments
* use l1 contract address and chain ID
* extend node configuration
* use block number instead of hash
* accept safe, finalized and numbers for L1Confirmations
* fix typos
* use L1DeploymentBlock
* add confirmation config
* move bridge client to separate file
* use uint64 block number
* fix bigint comparison
* rename constants
* add more logs
* Fix/improve node config parsing (#260 )
* raise error on failed parsing
* default value
* rename to l1_message
* rename variables and add comments
* write l1 msgs in a batch
* add more comments
* update tests
* allow batched and non-batched writes
* rename to accessors_l1_message
* handle error
* check if config is provided
* improve sync service DB batched writes
* include l1 messages in blocks: part 1
* add l1-message-type, transaction methods (#252 )
* add l1-message-type, transaction methods
* goimports
* Update core/types/transaction.go
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
* txpool l1 check, pointer change, marhsal test
* draft: start implementing l1message gas behavior
* draft: start implementing l1message gas behavior
* change to gas usage
* error comment typo
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* goimports
* update nonce, add hash test (fails), marshal test
* goimports
* target addr cant be nil
* change call msg
* comment out test
* lint
---------
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* Add L1 message database (#255 )
* add l1-message-type, transaction methods
* goimports
* Update core/types/transaction.go
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
* add L1 message store to rawdb
* remove comments
* rename to l1_message
* rename variables and add comments
* write l1 msgs in a batch
* add more comments
* update tests
* allow batched and non-batched writes
* rename to accessors_l1_message
* handle error
* add range check
* fix tests
* update comments
* nit
* support blocks with 0 l1 messages
---------
Co-authored-by: Max Wolff <maxcwolff@gmail.com>
Co-authored-by: Max Wolff <max@scroll.io>
* build(docker): auto docker push when pushing git tags (#258 )
* build(docker): update docker trigger tag prefix (#259 )
* Fix L1Message Deep Copy, Complete Bridge Tx Hash test (#269 )
* deep copy value field, add tx hash test
comment
* typo
* commitl1messages
* lint
* Revert "add L1 message sync service"
This reverts commit 5305e8a5de14766ed249e1a7d64042c7a72cf5c2.
* Revert "move bridge client to separate file"
This reverts commit 0b220bee37de93c3250545e23430db2c401a2f90.
* update branch
* use commitMessages for l1Txs
* little fix
* fix config
* fix test
* comment fixes
* fix
* fix config check
---------
Co-authored-by: Max Wolff <maxcwolff@gmail.com>
Co-authored-by: Max Wolff <max@scroll.io>
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
* Add ErrUnknownAncestor tests (#305 )
add ErrUnknownAncestor tests
* worker test include l1 msgs (#306 )
* worker test include l1 msgs
* move L1 message index update next to block insertion
---------
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* exclude l1 messages from transaction count limit in block (#307 )
* exclude l1 messages from transaction count limit in block
* fix comments
* trigger ci
* nit
---------
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* Expose queueIndex on Transaction (#316 )
expose queueIndex on Transaction
* test that l1msg doesn't count in maxTxPerBlock limit (#312 )
* test that l1msg doesn't count in maxTxPerBlock limit
* fix, comment
* retrigger ci
* change order inside test
---------
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
* reuse trace nonce field for queueIndex
* expose scroll APIs on the geth console
* add L1 message query APIs
* Trigger new block on new l1 messages (#343 )
* trigger new block on new l1 messages
* typo
* initialize l1MsgCh
* fix worker l1msg tests (#345 )
---------
Co-authored-by: Nazarii Denha <dengaaa2002@gmail.com>
* test(worker): ensure that l1 messages are included in the correct order (#346 )
test that l1msgs added in correct order
* rename enqueueIndex --> queueIndex
* move QueueIndex into transaction
* improve l1 db interface
* formatting
* bump version
* print l1config
* add API to query latest included message queue index
* clean up tx limit logic
* add clarifying comments and todos to ValidateL1Messages
* improve db comments and logs
* clean up L1MessageTx type handling
* format
* format
* improve L1 message block check
* fix missing L1 event handling
* fix TestL1MessageValidationFailure
* simplify sync height resume logic
* make l1Config.l1MessageQueueAddress non-pointer
* improve command line flags
* remove todo
* use abigen tools for log filtering
* cache block L1 message count
* nit: fix variable name case
* improve logs
* flush pending writes to DB before shutdown
---------
Co-authored-by: Nazarii Denha <dengaaa2002@gmail.com>
Co-authored-by: Max Wolff <max@scroll.io>
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
Co-authored-by: Max Wolff <maxcwolff@gmail.com>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
2023-06-07 07:24:19 -07:00
maskpp
a89ab83089
fix(API): use hexutil.Big for l1Fee in GetTransactionReceipt ( #336 )
...
* It's not a bug, but if just translate to hexutil.Big can be better.
* Revert editor's auto change.
* Update version.
* Update version.
2023-05-22 16:52:13 +08:00
HAOYUatHZ
32aacc3fd6
style: revert some formatting ( #294 )
...
Revert "style: remove blank line & white space formatting"
This reverts commit 349def8d5d78f83c19e899d5d80b1d9f6a5d18c6.
2023-04-20 17:49:35 +08:00
HAOYUatHZ
11ff7a0648
refactor: rename L1FeeEnabled to FeeVaultEnabled ( #281 )
...
rename `L1FeeEnabled` to `FeeVaultEnabled`
2023-04-19 22:41:38 +08:00
Max Wolff
028acecb02
fix return type in tx receipt for l1fee type ( #254 )
...
* edit marshalling override
* goimports
* not required
* encode l1fee
---------
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
2023-04-19 05:12:57 +02:00
HAOYUatHZ
df1d37e097
refactor(config): consolidate scroll flags ( #262 )
2023-04-17 18:56:26 +08:00
Péter Garamvölgyi
b986f1ea7b
feat(API): consider L1 fee in eth_call and eth_estimateGas ( #248 )
...
* consider L1 fee in eth_call and eth_estimateGas
* address comments
* consider l1fee in trace call
* nit
* fix bugs and add tests
* address comments
* bump version
2023-03-30 23:10:51 +08:00
Max Wolff
a74b35e86f
feat(api): add L1 fee to eth_getTransactionReceipt ( #244 )
...
* Update api.go
* fmt
* revert changes
* add l1fee to receipt in transaction processor
* decoder
* fmt
* fmt
* add encoding, test
* fmt
* removed duplicate l1 fee calc, added gen receipt
* remove dup l1feecalc
* lint
* add omitempty
* bump version
---------
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-03-28 09:08:57 +08:00
maskpp
d1f9523b08
feat(build): Upgrade go version to 1.18 ( #241 )
...
* update go version
* update go version
* format code by goimports
* format code by goimports
* go mod tidy
* update go version
* update go version
* upgrade linter
* add exclude rule
* fix golangci exclude
---------
Co-authored-by: vincent <419436363@qq.com>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
2023-03-06 13:32:39 +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
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
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
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
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
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
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
Ho
fefa8b99c7
fix getProof API when zktrie is enabled ( #132 )
...
fix getProof under zktrie
2022-07-27 13:01:38 +08:00
Ho
3682e05f3f
zktrie part3: include zktrie witness in block trace; add demo for generating witness data for mpt circuit ( #123 )
...
* demo for witness generator
* add simple binary for witness generating
* revert the witgen utility
* purge some code
* induce mptwitness argument
* handle case for failed tx, and special block in POA
* mptwitness: refactor for enabling output ops with different order
* induce witness gen with rwtable order
* self-documenting options for mptwitness
* fix trace flag according to review
* fix issue in handling failed tx
* refactor
* update according to reviews
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
2022-07-16 07:00:07 +08:00
Steven
b6cc89fabe
Add goimports lint ( #54 )
...
* Add `goimports` lint.
* Fix `goimports` issue.
* Fix group to `github.com/scroll-tech/go-thereum`.
2022-03-24 16:53:59 +08:00
maskpp
2040f8c781
Fix bug about genesis file struct ( #32 )
...
* Fix bug about genesis file struct
* Add test case if custom genesis file
* Add test case if custom genesis file
* Fix a mistake
* Update Makefile
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
2022-02-23 00:01:59 -08:00
maskpp
7745fd5840
Extract execution trace from EVM execution and provide subscription API ( #19 )
...
* Create go.yml
* Merge from zkrollup and fix conflict
* go mod tidy
* fix worker_test test case
* fix worker_test test case
* Delete go.yml
* add log content, enable memory trace
* add tracer pool handler
* Add comments and format code
* add evmTrace subscribe api
* Move the evmTrace struct.
* Fix miner bug.
* upgrade evmTrace api
* fix bug about evmTracesByHash api
* Fix the bug about block.timestamp and remove unnecessary copy.
* Update eth/filters/api.go
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* Upgrade comments.
* Delete useless code in test file
* Update miner/worker.go
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* Change the return result to BlockResult.
* Change return type.
* Change blockResult to blockResults.
* Add ReturnValue.
* Update core/rawdb/l2trace.go
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* Update core/rawdb/l2trace.go
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* Update core/types/l2trace.go
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* Add indent to the comment and rm json encoding flag.
* Rm json encoding flag.
* Update core/rawdb/l2trace.go
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* Rm json encoding flag.
* Update ethclient/ethclient.go
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
* Update eth/filters/api.go
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
* Use as the blockResult prefix flag.
* Update eth/filters/filter_system.go
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* Update eth/filters/filter_system.go
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* Update ethclient/ethclient.go
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* Update eth/filters/api.go
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
2022-01-23 20:41:15 +08:00
maskpp
b4d60884d2
Fix import fmt and run tests for given architecture ( #18 )
...
* fix gofmt
* Run tests for given architecture
* Speed up CI execution.
2022-01-12 19:45:06 -08:00
Jules
de7ed6af40
Update mod file and all imports to use scroll-tech URL ( #15 )
...
* Update mod file and all imports to use scroll-tech URL
Fixes #14
* Update Discord link
2021-12-24 10:59:22 +01:00
Marius van der Wijden
433f0919cc
internal/ethapi: fix recover sender of pending transaction ( #23765 )
...
* internal/ethapi: fix recover sender of pending transaction
* internal/ethapi: check if current exists
2021-10-18 20:53:08 +02:00