Commit Graph

71 Commits

Author SHA1 Message Date
Andrew Jackson (Ajax)
a520ee85d6 master-to-sturdy 2023-09-21 10:37:02 -05:00
Fridrik Asmundsson
dda2d7e023 Refactor EthBlockNumberOrHash and remove the number field 2023-06-22 17:18:50 +00:00
Fridrik Asmundsson
f358160cd5 Add EIP-1898 support needed for The Graph compatibility
Fixes: 

This PR updates the following RPC methods according to EIP-1898
specs.

The following RPC methods are affected:

- eth_getBalance
- eth_getStorageAt
- eth_getTransactionCount
- eth_getCode
- eth_call

Note that eth_getBlockByNumber was not included in this list in
the spec although it seems it should be affected also?

Currently these methods all accept a blkParam string which can be
one of "latest", "earliest", "pending", or a block number (decimal
or hex). The spec enables caller to additionally specify a json
hash which can include the following fields:

- blockNumber EthUint64: A block number (decimal or hex) which is
  similar to the original use of the blkParam string
- blockHash EthHash: The block hash
- requireCanonical bool) If true we should make sure the block is
  in the canonical chain

Since the blkParam needs to support both being a number/string and
a json hash then this to properly work we need to introduce a new
struct with pointer fields to check if they exist. This is done
in the EthBlockParamByNumberOrHash struct which first tries to
unmarshal as a json hash (according to eip-1898) and then fallback
to unmarshal as string/number.
2023-06-20 09:38:00 +00:00
Łukasz Magiera
fa36613a5e Merge branch 'more-methods' of github.com:protofire/lotus into protofire-more-methods 2023-05-30 17:01:52 +02:00
Fridrik Asmundsson
2bc205ed62 feat: Add eth_syncing RPC method
This commit adds eth_syncing RPC method which returns an object
with data about the sync status or false.
2023-05-10 16:08:18 -04:00
Jorropo
fe42d974a2 chore: all: migrate from go-libipfs to boxo
github.com/ipfs/libipfs/blocks was unmigrated to github.com/ipfs/go-block-format due to compatibility issues with the rest of the IPLD stack.
2023-04-18 17:22:18 +02:00
Arsenii Petrovich
11827034b9 add to gw MpoolPending, ChainGetBlock and MinerGetBaseInfo 2023-03-24 20:39:15 +02:00
Łukasz Magiera
4ebc408a5a Merge remote-tracking branch 'origin/master' into feat/new-gw-methods 2023-03-23 11:26:25 +01:00
Steven Allen
17274e72da feat: expose limited apis on the gateway 2023-03-15 16:12:18 -07:00
Steven Allen
fee480193e feat: apply gateway lookback limit to eth API lookback
This change:

1. Introduces new "limited" API endpoints for EthGetTransactionByHash
   and EthGetTransactionReceipt that accept lookback-limits.
2. Implements the gateway version of these API endpoints by calling the
   limited variants with the default message search lookback limit.

fixes 
2023-03-15 16:11:11 -07:00
Łukasz Magiera
486904bc92
Merge pull request from filecoin-project/steb/fee-history-gw-lookback-max
fix: gateway: correctly apply the fee history lookback max
2023-03-15 10:52:24 +01:00
Aayush
adfa766e1b feat: gateway: export StateVerifierStatus 2023-03-14 13:39:05 -04:00
Steven Allen
3556a4b07b fix: gateway: correctly apply the fee history lookback max
This fix ensures that the full fee-history range falls into the
allowable lookback rang.
2023-03-13 16:45:26 -07:00
Aayush Rajasekaran
afa36d3f62
Merge pull request from filecoin-project/asr/fix-msig-vested
gateway: fix: drop overzealous guard on MsigGetVested
2023-03-13 14:33:50 -04:00
Raúl Kripalani
2e56237898 Merge branch 'master' into asr/fix-eth-api-gateway 2023-03-12 15:56:55 +00:00
Aayush
82e2c3538c gateway: fix: drop overzealous guard on MsigGetVested 2023-03-11 09:35:51 -05:00
Ales Dumikau
6e9a1f44ed
Add new methods to gw 2023-03-11 10:27:42 +03:00
Arsenii Petrovich
0ccef4e5c0 run make gen 2023-03-08 18:53:19 +02:00
Arsenii Petrovich
fb5c24b2b5 add two more methods: StateCall and StateDecodeParams 2023-03-08 17:49:12 +02:00
Arsenii Petrovich
17ca3a1ac9 add MPoolGetNonce 2023-03-08 17:44:28 +02:00
Arsenii Petrovich
b8aaec6c37 add method implementation 2023-03-08 17:44:04 +02:00
Arsenii Petrovich
b67e6db527 try to add statenetworkname method 2023-03-08 17:43:48 +02:00
Aayush
8b5bc45fcf fix: eth API: correct gateway restrictions, drop unimplemented methods 2023-03-07 12:53:04 -05:00
Aayush Rajasekaran
8975f0b753
feat: EthAPI: Add FilecoinAddressToEthAddress () 2023-02-24 14:19:52 -05:00
Jorropo
2d3065ae8e chore: all: bump go-libipfs to replace go-block-format
Includes changes from:
- https://github.com/ipfs/go-block-format/pull/37
- https://github.com/ipfs/go-libipfs/pull/58

(cherry picked from commit f572852d06)
2023-02-17 18:46:11 +01:00
Aayush
1d0a524b88 feat: EthAPI: Add EthAddressToFilecoinAddress 2023-02-16 12:24:17 -05:00
ychiao
3c580403c1 implement itest and handle optional params 2023-02-10 13:33:59 -05:00
Łukasz Magiera
a6a2f0dbae gateway: Support all EthModule methods 2023-02-02 13:37:31 +01:00
Łukasz Magiera
ad14d71978 eth rpc: Params are optional in eth_subscribe 2023-01-31 11:08:51 +01:00
Łukasz Magiera
965b1cf03c itests: Fix TestEthSubscribeLogs 2023-01-31 10:28:12 +01:00
Łukasz Magiera
1286d76988 gateway: eth_subscribe support 2023-01-31 10:28:12 +01:00
Łukasz Magiera
6491becbe1 rpc: Switch eth_subscribe to reverse calls 2023-01-31 10:28:12 +01:00
Łukasz Magiera
eadf8b680c address review 2023-01-13 21:55:14 -05:00
Łukasz Magiera
22231dc34f gateway: Limits and proxy for eth_ methods 2023-01-13 20:04:42 +01:00
Łukasz Magiera
708618d11c feat: gateway: eth_ api support 2023-01-13 20:04:41 +01:00
Kevin Li
6c7fd94aa7 api: ethrpc: implement eth_sendRawTransaction ()
Co-authored-by: Raúl Kripalani <raul@protocol.ai>
2022-11-09 19:28:17 +02:00
Aayush
27880ece2b feat: support typed errors over RPC 2022-09-27 15:34:01 +00:00
Łukasz Magiera
08b22edd89 fix make gen 2022-08-29 16:25:30 +02:00
Łukasz Magiera
e65fae28de chore: fix imports 2022-06-14 17:00:51 +02:00
Geoff Stuart
b7010c9e60 Implement function to migrate actors with only code changes 2022-06-10 15:52:32 -04:00
Łukasz Magiera
ae42ed0bb1 Merge remote-tracking branch 'origin/master' into rate-limit-gateway 2022-06-10 13:01:20 +02:00
Cory Schwartz
84cc1e30fd lint 2022-06-07 10:36:57 -07:00
Cory Schwartz
ea51732163 use key type 2022-06-06 16:37:11 -07:00
Aayush
b28c11a57d Merge branch 'feat/nv16' 2022-06-03 14:01:49 -04:00
Cory Schwartz
4c51e4ccda default 5 sec 2022-06-01 00:59:13 -07:00
Cory Schwartz
e645e8aa7c Merge branch 'master' into rate-limit-gateway 2022-06-01 00:58:23 -07:00
Łukasz Magiera
56bde5adf9
Merge pull request from filecoin-project/feat/health-endpoints
feat: networking: add healthz and livez endpoints
2022-05-30 15:42:06 +02:00
Łukasz Magiera
032e598962 feat: gateway: OpenRPC support 2022-05-27 17:03:56 +02:00
Łukasz Magiera
48aa0131bf fix: rpc: readd rpc.discover aliases 2022-05-27 17:03:03 +02:00
Cory Schwartz
444d0b1b8a add healthz and livez endpoints 2022-05-20 18:38:17 -07:00