Etan Kissling
b0158c0619
X
2024-05-13 11:00:13 +03:00
Etan Kissling
aedf76f9c8
Introduce wrapper type for EIP-4844 transactions
...
EIP-4844 blob sidecars are a concept that only exists in the mempool.
After inclusion of a transaction into an execution block, only the
versioned hash within the transaction remains. To improve type safety,
replace the `Transaction.networkPayload` member with a wrapper type
`PooledTransaction` that is used in contexts where blob sidecars exist.
2024-05-06 22:52:56 +02:00
andri lim
47605dbdf3
Fix txPool: excessBlobGas should be calculated before entering EVM, not after ( #2149 )
2024-04-24 07:50:50 +07:00
andri lim
4078cb14c5
Engine api simulator: fix payload customizer ( #2143 )
...
* Engine api simulator: fix payload customizer
* Move versionedHashes validation before blockHash validation in newPayload
* More descriptive error message
* Fix Web3Hash to eth.Hash256 conversion
2024-04-21 21:44:05 +07:00
andri lim
6694e240d7
Repositioning blob hash validation in newPayload of engine API ( #2141 )
2024-04-20 02:43:13 +07:00
jangko
e2c873b16f
Fix engine API and engine API simulator according to latest spec.
2024-04-18 14:55:49 +07:00
jangko
6c1afe1127
Engine API: forkChoiceUpdated V2 And V3 should return invalidPayloadAttributes error instead of invalidParams error upon receiving erroneous payload attributes
2024-04-17 15:45:39 +07:00
andri lim
0d4db21dad
Add engine_getPayloadV4 and engine_newPayloadV4 ( #2116 )
2024-03-28 18:59:23 +07:00
andri lim
ef378c88a5
Fix payload validation in engine_newPayload ( #2107 )
...
* Fix validatePayload in engine_newPayload
* Fix copyright year
2024-03-26 22:13:30 +07:00
andri lim
33976e8875
Replace invalidParams error with invalidForkchoiceState error in forkchoiceUpdated handler ( #2106 )
2024-03-26 09:31:21 +07:00
andri lim
7ea6d719d9
Implement RPC method eth_getAccessList ( #2091 )
...
* Implement RPC method eth_getAccessList
* Fix comment
2024-03-21 18:24:32 +07:00
andri lim
30277be1f3
Bump nim-web3 to 285d97c2b05bbe2a13dab4b52ea878157fb1a1a1 ( #2088 )
...
* Bump nim-web3 to 285d97c2b05bbe2a13dab4b52ea878157fb1a1a1
Unify EthCall/EthSend into TransactionArgs (#138 )
* bump ssz-serialization
* Fix BlockNumber conversion
* Bump ssz-serialization: Restrict toSszType usage to non SszType in readSszBytes (#81 )
2024-03-21 08:05:22 +07:00
andri lim
7c1af9a78f
Add style check to config.nims and fix styles in source code ( #2038 )
...
* Add style check to config.nims and fix styles in source code
* Fix copyright year
2024-02-20 10:07:38 +07:00
jangko
3e21281d12
Bump nim-web3 and others
...
Bump nim-json-rpc and nimbus-eth2 too.
Reason: both nim-json-rpc and nim-web3 migrate from
stdlib/json to nim-json-serialization
2024-01-14 10:41:23 +07:00
jangko
5fd54961e3
Bump nim-web3: remove rpc types duplicates
2023-12-13 07:58:12 +07:00
jangko
7de6199ba3
Engine API: Fix latestValidHash value when invalid timestamp detected
2023-11-05 10:52:27 +07:00
jangko
4febd1899f
TxPool: Bubble up error from packer to assembleBlock
2023-11-01 09:24:32 +07:00
jangko
ddfaf2a4df
Engine API: Don't build payload if requested timestamp is invalid
2023-10-28 15:35:58 +07:00
andri lim
5bfdcd0d27
Engine API: rearrange version and fork validation in fcU and newPayload ( #1848 )
2023-10-24 11:30:48 +07:00
andri lim
77289c7795
More cancun tests ( #1843 )
...
* Engine API simulator: More Cancun tests
* Fix Cancun validation in Engine API and TxPool
2023-10-23 20:59:57 +07:00
jangko
0d91d8736c
Engine API: Fix API version validation
2023-10-23 09:25:40 +07:00
andri lim
f365e0d472
Engine API: remove EIP-4844 blobs before insert header to chain ( #1834 )
2023-10-20 21:02:22 +07:00
andri lim
7169c846a3
Fix TxPool when handling EIP-4844 blob tx ( #1831 )
...
* Fix TxPool when handling EIP-4844 blob tx
2023-10-20 15:30:05 +07:00
jangko
c005281391
processBeaconBlockRoot in TxPool(EIP-4788)
2023-10-19 07:50:07 +07:00
andri lim
04c7ed8ec9
Change EthTime from std.Time to distinct uint64 ( #1820 )
...
* Change EthTime from std.Time to distinct uint64
* Bump nimbus-eth2
2023-10-18 09:16:11 +07:00
andri lim
744e4f9739
bump web3 and add shouldOverrideBuilder field to GetPayloadV3Response ( #1807 )
...
* bump web3 and add shouldOverrideBuilder field to GetPayloadV3Response
* Resolve ambiguous identifier error
2023-10-05 20:54:51 +07:00
andri lim
34b1e29ac9
Fix test_blockchain_json and pyspec simulator for Cancun ( #1805 )
...
* Fix test_blockchain_json and pyspec simulator for Cancun
* Preserve applyDeletes comments
* Fix redefinition error
* Move test_macro to tests folder
2023-10-05 10:04:12 +07:00
jangko
369a54d62a
Add makeNextWithdrawals to engine api simulator
2023-09-30 20:16:45 +07:00
andri lim
501d8a369a
Add BeaconSync reorg tests ( #1782 )
...
* Add BeaconSync reorg tests
* Fix redefinition error in tx_sender.nim
2023-09-30 19:20:29 +07:00
andri lim
e8d59bc7a7
Working prototype of beacon downloader ( #1780 )
...
* Working prototype of beacon downloader
* Use KeyedQueue for setSyncTarget queue
* Convert MergeTracker and PayloadQueue to non ref object
2023-09-28 13:20:12 +07:00
Jordan Hrycaj
6bc55d4e6f
Core db aristo and kvt updates preparing for integration ( #1760 )
...
* Kvt: Implemented multi-descriptor access on the same backend
why:
This behaviour mirrors the one of Aristo and can be used for
simultaneous transactions on Aristo + Kvt
* Kvt: Update database iterators
why:
Forgot to run on the top layer first
* Kvt: Misc fixes
* Aristo, use `openArray[byte]` rather than `Blob` in prototype
* Aristo, by default hashify right after cloning descriptor
why:
Typically, a completed descriptor is expected after cloning. Hashing
can be suppressed by argument flag.
* Aristo provides `replicate()` iterator, similar to legacy `replicate()`
* Aristo API fixes and updates
* CoreDB: Rename `legacy_persistent` => `legacy_rocksdb`
why:
More systematic, will be in line with Aristo DB which might have
more than one persistent backends
* CoreDB: Prettify API sources
why:
Better to read and maintain
details:
Annotating with custom pragmas which cleans up the prototypes
* CoreDB: Update MPT/put() prototype allowing `CatchableError`
why:
Will be needed for Aristo API (legacy is OK with `RlpError`)
2023-09-18 21:20:28 +01:00
andri lim
56215ed83f
Bump stint to v2.0: new array backend ( #1747 )
...
* Bump stint to v2.0: new array backend
2023-09-13 09:32:38 +07:00
jangko
5fb0fc65ba
Implement beacon sync stub
...
- Prepare a test env for beacon sync in engine api simulator.
- Wiring beacon sync to the rest of subsystems.
2023-09-07 08:49:31 +07:00
andri lim
96fb355efe
Implement EIP-4788: Beacon block root in the EVM ( #1722 )
...
* Implement EIP-4788: Beacon block root in the EVM
* EIP-4788: Fix genesis.parentBeaconBlockRoot initialization
2023-08-30 23:29:48 +07:00
jangko
7a1fe5707c
Refactor engine api and cleanup web3 types conversion
2023-08-30 10:42:46 +07:00