Commit Graph

3045 Commits

Author SHA1 Message Date
Geoff Stuart
5133b9da94 Add EthGetMessageCidByTransactionHash, fix EthGetTransactionHashByCid 2023-01-18 17:48:10 -05:00
Ian Davis
061e8cca1f Add itest for EthGetLogs filter combinations 2023-01-18 17:33:54 +00:00
Geoff Stuart
72f42505b9 Explain config more clearly 2023-01-16 08:17:34 -05:00
Geoff Stuart
6b0f1116ce Remove maybe unnecessary check 2023-01-16 07:08:22 -05:00
Geoff Stuart
f8121c8f1c Add gc for eth tx database 2023-01-16 07:04:20 -05:00
Geoff Stuart
f8dee0983a review fixes 2023-01-16 01:56:55 -05:00
Geoff Stuart
a8436074a6 Store mapping from hashes for Ethereum transactions to Filecoin Message Cids 2023-01-16 01:17:56 -05:00
Jennifer Wang
51d77d408b add bundle dev/20230114-pre-rc.2 2023-01-14 01:41:46 -05:00
vyzo
859cdca4f7 update go-state-types
use CreateExternal

use CreateExternal in itest evm deployment

add missing import

update gst
2023-01-14 01:11:11 -05:00
Jennifer Wang
427fbdb8a9 Merge branch 'release/v1.20.0' into jen/resolveconflict 2023-01-13 21:50:57 -05:00
raulk
cdf3812e40
NV18: Filecoin EVM runtime + Actor Events + EthAccount + EAM + f4 addressing (#9998)
Co-authored-by: Steven Allen <steven@stebalien.com>
Co-authored-by: Raul Kripalani <raulk@users.noreply.github.com>
Co-authored-by: Kevin Li <ychiaoli18@users.noreply.github.com>
Co-authored-by: vyzo <vyzo@hackzen.org>
Co-authored-by: Ian Davis <nospam@iandavis.com>
Co-authored-by: Aayush Rajasekaran <arajasek94@gmail.com>
Co-authored-by: Jiaying Wang <42981373+jennijuju@users.noreply.github.com>
Co-authored-by: Jennifer Wang <jiayingw703@gmail.com>
Co-authored-by: Geoff Stuart <geoff.vball@gmail.com>
Co-authored-by: Shrenuj Bansal <shrenuj.bansal@protocol.ai>
Co-authored-by: Shrenuj Bansal <108157875+shrenujbansal@users.noreply.github.com>
Co-authored-by: Geoff Stuart <geoffrey.stuart@protocol.ai>
Co-authored-by: Aayush Rajasekaran <aayushrajasekaran@Aayushs-MacBook-Pro.local>
Co-authored-by: ZenGround0 <5515260+ZenGround0@users.noreply.github.com>
Co-authored-by: zenground0 <ZenGround0@users.noreply.github.com>
2023-01-13 19:11:13 +00:00
Łukasz Magiera
574b684396 address review 2023-01-13 20:08:35 +01:00
Łukasz Magiera
9b7c506de0 lite node: Use full.EthEventAPI provided by gateway in lite mode 2023-01-13 20:04:42 +01:00
Łukasz Magiera
12c23d7d60 api: Drop EthModuleDummy 2023-01-13 20:04:42 +01:00
Łukasz Magiera
708618d11c feat: gateway: eth_ api support 2023-01-13 20:04:41 +01:00
Raúl Kripalani
6de2aca8ae change ResolveToKeyAddr => ResolveToDeterministicAddr + friends. 2023-01-13 01:44:39 +00:00
raulk
014d95454b
address review comments from @magik6k on #9617 (#9997) 2023-01-12 19:11:48 +00:00
raulk
3ef32395f3
clean up ethtypes: rationalize ethtypes.EthAddressFromFilecoinAddress and conversion methods (#9992) 2023-01-12 17:09:21 +00:00
ychiao
105a1259bc
Eth JSON-RPC: use ToFilecoinAddress() to get f4 addr and validate v sig + cleanups (#9970)
Co-authored-by: raulk <raul@protocol.ai>
2023-01-12 14:55:07 +00:00
Raúl Kripalani
8512bbc45b drop f099 eth_call hack.
We now create the 0x0 Eth null address on genesis as an EthAccount,
so using the 0x0 Eth null address is guaranteed to work.
2023-01-12 08:50:38 +00:00
Raúl Kripalani
1e0c78098c constant for Event AMT bitwidth. 2023-01-12 08:50:38 +00:00
Raúl Kripalani
6c0ddd4ec9 fix typos. 2023-01-12 08:50:38 +00:00
Raúl Kripalani
8ef17332ba {predictable=>delegated} addresses. 2023-01-12 08:50:38 +00:00
Jennifer Wang
cb49edf29d update embryo to placehodler 2023-01-09 22:23:55 -05:00
hanabi1224
6b14b0536e fix: error checks 2023-01-04 20:10:21 +08:00
hanabi1224
83554afebc Merge remote-tracking branch 'origin/master' into close-write 2023-01-02 16:42:21 +08:00
Aayush
a5851a1763 Merge branch 'master' into feat/nv18-fevm 2022-12-23 16:37:26 -05:00
Raúl Kripalani
a22518d96d remove unused var. 2022-12-23 18:21:40 +00:00
Raúl Kripalani
a469840290 merge ntwk/wallaby into feat/nv18-fevm.
Unfortunately some important changes to make this branch
consistent and functional only existed on the wallaby branch.
So this commit brings them in sync.
2022-12-23 18:20:46 +00:00
Raúl Kripalani
f44bd27f7b fix: eth_blockNumber: make it aware of null rounds. 2022-12-23 18:06:33 +00:00
Raúl Kripalani
c7efaaad7e refine docs. 2022-12-23 17:20:57 +00:00
Raúl Kripalani
9505ac88ba add docs. 2022-12-23 17:20:57 +00:00
Raúl Kripalani
b8b3b5d48b fix: Eth JSON-RPC API: eth_getTransactionReceipt logs-related fixes.
Hardhat doesn't like logs: null in transaction receipts when no logs
were emitted. Wants empty array.

Size logsBloom correctly.
2022-12-23 17:20:57 +00:00
ychiao
60c9832429 fix nonce 2022-12-23 17:20:57 +00:00
Raúl Kripalani
4411fd7f81 eth_getTransactionByHash: return nil in some fields when tx is in mpool. 2022-12-23 17:20:57 +00:00
Raúl Kripalani
7ed79fece6 fix: eth_getTransactionByHash: return hash. 2022-12-23 17:20:57 +00:00
Aayush
9d3e50f140 feat: implement and test the v18 migration 2022-12-22 13:05:00 -05:00
Raúl Kripalani
bb5cb19607 fix: Eth JSON-RPC API: eth_getTransactionByHash should return nil when not found. 2022-12-22 11:47:46 +00:00
raulk
e7aa7cb04f
add a basic FEVM integration test. (#9922)
* add a basic FEVM integration test.

Exercises f4 addresses, placeholder transitions, Ethereum Account.

* remove unused parameter from newEthTxFromFilecoinMessageLookup.

* break when found in newEthTxFromFilecoinMessageLookup.

* fixup test.

* lint and gen.

* move test to itests root package.

Co-authored-by: Shrenuj Bansal <shrenuj.bansal@protocol.ai>
2022-12-21 15:12:07 -05:00
Shrenuj Bansal
3d3bce6702
Merge pull request #9897 from filecoin-project/sbansal/eth-state-cli
feat: cli: Add cli to inspect Eth addresses and simulate calls
2022-12-19 14:50:52 -05:00
ychiao
20f27af97e
eth: rpc: various Ethereum JSON-RPC API fixes (#9837)
Co-authored-by: Raúl Kripalani <raul@protocol.ai>
Fixes https://github.com/filecoin-project/ref-fvm/issues/1016
Fixes https://github.com/filecoin-project/ref-fvm/issues/1158
Fixes https://github.com/filecoin-project/ref-fvm/issues/1196
Fixes https://github.com/filecoin-project/ref-fvm/issues/1269
Fixes https://github.com/filecoin-project/lotus/issues/9820
2022-12-19 16:45:32 +00:00
Łukasz Magiera
156ba420c3 fix: splitstore: Don't deadlock in mpool protector 2022-12-17 13:14:50 +01:00
Geoff Stuart
92f3a7b050 Merge branch 'feat/nv18-fevm' into feat/nv18-events 2022-12-16 16:27:14 -05:00
Geoff Stuart
bc7c190db0 Move all eth stuff into ethtypes 2022-12-16 13:48:06 -05:00
Shrenuj Bansal
d71f5a7d12 Add cli to inspect Eth addresses and simulate calls 2022-12-16 12:54:50 -05:00
Aayush
7ea690d4be Merge branch 'master' into feat/nv18-fevm 2022-12-16 11:52:41 -05:00
hanabi1224
6ae7cdab64 call Stream.CloseWrite right after writing 2022-12-16 17:22:53 +08:00
Geoff Stuart
88d59f6a5f Set notifications for SIGTERM and SIGINT when we start the cli 2022-12-15 12:54:41 -05:00
Aayush
720451c89e Merge branch 'master' into feat/nv18-fevm 2022-12-14 19:54:47 -05:00
Geoff Stuart
442132be70 Move eth types to chain/types/ethtypes 2022-12-14 14:08:38 -05:00
Geoff Stuart
96bb03e1e0 Move EthTxReceipt to api 2022-12-14 14:00:19 -05:00
Geoff Stuart
855c35cb88 Move eth functions out of api 2022-12-14 11:57:01 -05:00
Geoff Stuart
f95e6602a0 Check for nil returns from StateSectorGetInfo 2022-12-12 10:44:08 -05:00
Geoff Stuart
2f8cdb4c4b
Merge pull request #9824 from filecoin-project/fix/miner-startup-bin-log
fix: don't log sp address in binary on node startup
2022-12-09 16:16:40 -05:00
Geoff Stuart
4936b7e1ae make gen 2022-12-09 15:20:51 -05:00
Ian Davis
958fc69906 Fix linter issues 2022-12-09 18:47:21 +00:00
Łukasz Magiera
1234647b9d fix: don't log sp address in binary on node startup 2022-12-09 10:27:33 +01:00
Ian Davis
485d161a5e Use correct field for upper epoch range in EthGetLogs 2022-12-08 12:34:16 +00:00
Łukasz Magiera
a10c014ba6
Merge pull request #7398 from ChainSafe/libp2p-pubsub-tracer
Lotus extended pubsub tracer
2022-12-08 12:14:56 +01:00
Steven Allen
266492fa1c Merge branch 'feat/nv18-fevm' into feat/nv18-events 2022-12-07 22:16:56 -08:00
Ian Davis
05f983dc10 Mop up some missed package changes 2022-12-07 19:57:58 +00:00
Ian Davis
56259c40fc Use EthHash compatible type for subscription and filter IDs 2022-12-07 12:51:03 +00:00
Aayush Rajasekaran
6443e72ad7 Merge branch 'master' into feat/nv18-fevm 2022-11-29 20:16:12 -06:00
Aayush Rajasekaran
15afe384ff Merge branch 'master' into feat/nv18 2022-11-29 10:01:51 -06:00
Geoff Stuart
61ac270876 Set more timeouts to 30s 2022-11-29 10:34:19 -05:00
ychiao
f1493fbee7
eth: rpc: fix sendRawTransaction, transactionIndex, feeHistory (#9736)
* Eth JSON-RPC API: add transactionIndex

* Eth JSON-RPC API: fix EthFeeHistory and EthSendRawTransaction

* Eth JSON-RPC API: fix parsing block parameter for getBlockByNumber

* fix itest
2022-11-27 18:44:43 -08:00
Geoff Stuart
d2b7c3889b Add more timeouts 2022-11-25 16:24:09 -05:00
Ian Davis
9f85d3dca7 Address simple linter issues 2022-11-24 16:32:27 +00:00
Aayush
40278cd3c1 Update to go-state-types v0.10.0-alpha-2 2022-11-23 17:36:49 -05:00
hannahhoward
34d78093e8 chore(deps): update index provider 0.9.1 2022-11-22 20:49:11 -08:00
Steven Allen
176275267b Merge branch 'feat/nv18' into feat/nv18-fevm 2022-11-22 10:32:26 -08:00
Raúl Kripalani
56d60fbbd4 fix git conflict. 2022-11-21 22:40:21 +00:00
Raúl Kripalani
03a7caf1e6 fix: Eth JSON-RPC API: receipt: logs bloom should be sized 256 bytes. 2022-11-18 20:44:54 +00:00
Raúl Kripalani
b8901ff5fd fix: Eth JSON-RPC API: return empty logs array in receipt when no logs. 2022-11-18 20:35:57 +00:00
Łukasz Magiera
71a84bb092 feat: wdpost: Configurable pre-check timeouts 2022-11-17 18:25:30 +01:00
Raúl Kripalani
ce91e4261d nolint. 2022-11-16 22:42:45 +00:00
Raúl Kripalani
7a71ce48f4 fix: left pad log values to full EVM words. 2022-11-16 22:08:27 +00:00
Raúl Kripalani
23007b0b3b fix: do not hash log values; decode as cbor byte arrays. 2022-11-16 21:45:42 +00:00
Raúl Kripalani
d441425618 eth_getTransactionReceipt: return type & non-zero bloom if logs, rm root. 2022-11-16 21:16:27 +00:00
Raúl Kripalani
a536f533d8 Eth JSON-RPC API: make EthLog#Data a string. 2022-11-16 20:51:28 +00:00
Ian Davis
5b4ec7dbea
feat: add test and fixes for EthSubscribe (#9659) 2022-11-16 20:26:57 +00:00
Raúl Kripalani
1ab39a40da simplify by moving receipt constructor logic to API. 2022-11-16 14:15:29 +00:00
Raúl Kripalani
32385a97cd Eth JSON-RPC API: return logs in eth_getTransactionReceipt. 2022-11-16 13:53:27 +00:00
Raúl Kripalani
7c2dcc8db6 Eth JSON-RPC API: add aliases for new methods. 2022-11-16 12:59:46 +00:00
Ian Davis
5a1f8d8f28 Return eth blocks not tipsets in subscriptions 2022-11-16 12:57:03 +00:00
Ian Davis
314fb31886 Fix signature of EthSubscribe 2022-11-16 12:18:25 +00:00
Ian Davis
8134d2f05b Parse block heights as hex 2022-11-16 12:08:48 +00:00
Ian Davis
41bf2a0297 Load actor to resolve address 2022-11-16 11:50:00 +00:00
Ian Davis
d5177a394a Add TestEthGetLogsAll itest 2022-11-16 11:22:30 +00:00
Shrenuj Bansal
c0925ffb92 Remove some configs 2022-11-15 16:46:48 -05:00
Ian Davis
10357112e5 Add basic itests for ethereum filter api 2022-11-15 18:02:36 +00:00
Ian Davis
c31662d92a make gen 2022-11-15 15:48:47 +00:00
Ian Davis
32839f6919 Initialise event index in di 2022-11-15 15:28:24 +00:00
Ian Davis
0d9c474a59 Implement EthGetLogs 2022-11-15 15:28:24 +00:00
Ian Davis
0e8dd9efc5 Add historic event indexing 2022-11-15 15:28:24 +00:00
Raúl Kripalani
28ec43cdea Merge branch 'feat/nv18-events' into raulk/events-integrate-fvm 2022-11-15 13:06:18 +00:00
Ian Davis
273ac513fc
Ethereum actor events API fixes (#9639)
Co-authored-by: Raúl Kripalani <raul@protocol.ai>
2022-11-15 13:02:11 +00:00
Raúl Kripalani
40b8e9562e fix {=>New}EthHashFromCid. 2022-11-15 12:38:59 +00:00
Raúl Kripalani
846aea57c5 Merge branch 'feat/nv18-fevm' into feat/nv18-events 2022-11-15 12:28:25 +00:00
Raúl Kripalani
7cc2c5ce71 fix types in Eth API. 2022-11-15 12:22:36 +00:00
Shrenuj Bansal
b95d1a6323 Merge branch 'master' into sbansal/nonce-coordination-and-consensus-for-chain-nodes 2022-11-14 17:50:52 -05:00
Shrenuj Bansal
f14a25a59b make gen and docsgen 2022-11-14 16:54:31 -05:00
Shrenuj Bansal
800d9de4d5 Address comments 2022-11-14 15:46:58 -05:00
Geoff Stuart
95af40543a Fix lotus-miner proving check 2022-11-14 15:29:50 -05:00
vyzo
af39ec27b8
NV18: FEVM: Basic smoke test (#9635)
* unknown return types should not be treated as errors from WaitForMessage

* simplecoin FEVM smoke test

* add itest-fevm to circle matrix

* use a named error for metadata lookup failures

* hand-write the fevm basic test

* make gen

* address nits
2022-11-14 21:06:55 +02:00
ychiao
8a7367f1c9
api: ethrpc: add missing fields (#9631)
* api: ethrpc: add missing fields

* fix make gen
2022-11-12 09:44:52 -08:00
Shrenuj Bansal
2681c2a51a Change config name from Raft to Cluster 2022-11-11 15:13:52 -05:00
Shrenuj Bansal
2fa21ff091 Merge branch 'master' into sbansal/nonce-coordination-and-consensus-for-chain-nodes 2022-11-11 14:41:38 -05:00
Ian Davis
7383ecb0ba make gen 2022-11-10 15:04:58 +00:00
Ian Davis
69210d0917 Ethereum compatible actor event API 2022-11-10 15:02:53 +00:00
vyzo
0ee9f9d956 lint 2022-11-10 05:55:59 +02:00
vyzo
5949307342 fix gateway instantation for the eth api
it's a dummy, but at least it makes tests pass
2022-11-10 05:52:36 +02:00
vyzo
2b23372ad3 fixup merge artifacts 2022-11-10 02:51:57 +02:00
Kevin Li
2e5de478a6 api: ethrpc: fix a potential panic when querying block info (#9593) 2022-11-09 19:47:44 +02:00
raulk
0bd5f1d4a4 Eth JSON-RPC: eth_estimateGas: fix gas estimation by actually making it run. (#9564) 2022-11-09 19:47:25 +02:00
Steven Allen
49da019bd0 fix: allow EthCall.From to be nil (#9556) 2022-11-09 19:47:25 +02:00
Steven Allen
6337d594fa fix: evm: use CREATE not CREATE2 for EVM contract deployment (#9553)
Also updates the actors to accommodate this change, and fix a bug in
looking up addresses for f4 actors.
2022-11-09 19:47:23 +02:00
Raúl Kripalani
dc5fc9ded4 fix eth_feeHistory. 2022-11-09 19:47:07 +02:00
Raúl Kripalani
78dd7a246a fix gas estimation.
Make it use GasEstimateMessageGas, which applies overestimation
by default. This accounts for inclusion costs.
2022-11-09 19:47:07 +02:00
Raúl Kripalani
32617a61df fix eth_feeHistory: add missing param. 2022-11-09 19:47:06 +02:00
Raúl Kripalani
323ff1b55e make eth_getCode return nil if the target is not an EVM smart contract. 2022-11-09 19:46:24 +02:00
Kevin Li
64afdfc642 api: ethrpc: implement eth_feeHistory (#9539)
Co-authored-by: Raúl Kripalani <raul@protocol.ai>
2022-11-09 19:46:22 +02:00
Raúl Kripalani
a58e87b173 fixes to Eth JSON-RPC API. 2022-11-09 19:43:02 +02:00
Kevin Li
e17e92775c api: ethrpc: fix eth_getCode, eth_getTransactionReceipt (#9530) 2022-11-09 19:40:00 +02:00
Steven Allen
56b238980b feat: use f4 eth addresses wherever possible (#9532)
Co-authored-by: Raúl Kripalani <raul@protocol.ai>
2022-11-09 19:39:50 +02:00
Steven Allen
aa0e6c17b9 Eth TX Encoding (#9531) 2022-11-09 19:39:49 +02:00
Raúl Kripalani
98e534cc77 add support for f4 addresses in the Eth JSON-RPC and signature. 2022-11-09 19:33:23 +02:00
Kevin Li
16ee7d07a8 fix: EthGetTransactionCount should not return error 2022-11-09 19:30:27 +02:00
Kevin Li
2741c961b7 Revert "fix: EthGetTransactionCount should not return error"
This reverts commit ea73fd5b1901c614e7c376fad5952fcbea8d5207.
2022-11-09 19:30:25 +02:00
Kevin Li
ccbf57165f fix: EthGetTransactionCount should not return error 2022-11-09 19:30:16 +02:00
vyzo
61de2f4a4a fix eth api issues with evm constructor changes 2022-11-09 19:30:08 +02:00
raulk
ee83dceef0 Eth JSON-RPC API: implement eth_getCode and eth_getStorageAt (#9397) 2022-11-09 19:30:06 +02:00
Kevin Li
6c7fd94aa7 api: ethrpc: implement eth_sendRawTransaction (#9334)
Co-authored-by: Raúl Kripalani <raul@protocol.ai>
2022-11-09 19:28:17 +02:00
Kevin Li
b53d5924a1 feat: ethrpc: implement call, estimateGas, getTransactionCount (#9306) 2022-11-09 19:25:40 +02:00
Kevin Li
e5bb5b7430 feat: ethrpc: implement EthBlock and EthTx structs (#9287)
Co-authored-by: Raúl Kripalani <raul@protocol.ai>
2022-11-09 19:23:49 +02:00
Kevin Li
4652d8559f api: ethrpc: implement a few ethereum JSON-RPC API methods (#9208) 2022-11-09 19:23:11 +02:00
Łukasz Magiera
401359646a netbs: Address review 2022-11-08 09:37:43 +00:00
Łukasz Magiera
ec89424c42 make repo not depend on ffi 2022-11-08 09:37:43 +00:00
Łukasz Magiera
5f5cc794f0 make config not depend on ffi 2022-11-08 09:37:43 +00:00
Łukasz Magiera
73a515b93f make lint happy 2022-11-08 09:37:43 +00:00
Łukasz Magiera
2c89b3240f retrieval: Support retrievals into remote stores 2022-11-08 09:37:34 +00:00
ZenGround0
4ffded6fef
feat:splitstore:single compaction that can handle prune aka two marksets one compaction (#9571)
* begin

* rough draft -- this should probably actually work?

* WIP

* Start testing

* message mode

* Fix tests, make gen

* Better default

* docsgen-cli

* Review Response

Co-authored-by: zenground0 <ZenGround0@users.noreply.github.com>
2022-11-07 16:31:12 -05:00
Aayush
c0b7343e60 Merge branch 'release/v1.18.0' into asr/merge-release-into-master 2022-11-06 14:40:13 -05:00
simlecode
5284f60e83 fix: add fields to ForkUpgradeParams 2022-10-22 23:41:52 +08:00
simlecode
30f147770c fix: use api.ErrActorNotFound instead of types.ErrActorNotFound 2022-10-22 23:41:51 +08:00
Shrenuj Bansal
ad8b959880 Address more comments and add test for gorpc auth 2022-10-18 15:53:42 -04:00
Shrenuj Bansal
15ed1ee33c Merge branch 'master' into sbansal/nonce-coordination-and-consensus-for-chain-nodes 2022-10-17 22:55:48 -04:00
Shrenuj Bansal
674427a8b2 fix lint and make gen 2022-10-17 22:44:00 -04:00
Shrenuj Bansal
900525f8c2 some cleanup 2022-10-17 16:13:30 -04:00
Shrenuj Bansal
139f8773de fix some bugs and address some comments 2022-10-16 22:52:22 -04:00