ChainSafe / ChainSafe/gossamer
RPC Support and Tooling
- Dominant language
- Go
- Stars
- 454
- Forks
- 144
- PR merge metrics
- No merged PRs in 30d
Description
The following is a detailed list of the missing or incomplete RPC calls that need to be implemented. Each RPC call can be considered complete when the intended functionality is completed, error codes conform to the spec, and a corresponding integration test.
Relevant links related RPC calls:
- https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md
- https://github.com/centrifuge/go-substrate-rpc-client
### Author RPC calls
- [x] [`hasSessionKeys`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#187-author_hassessionkeys)
* [Substrate reference- `has_session_keys`](https://github.com/paritytech/substrate/blob/master/client/rpc/src/author/mod.rs#L124)
- [x] [`author_submitAndWatchExtrinsic (pubsub)`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#189-author_submitandwatchextrinsic-pubsub)
### BABE RPC calls
- [ ] [`epochAuthorship`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#1162-babe_epochauthorship)
* [Substrate reference - `epoch_authorship`](https://github.com/paritytech/substrate/blob/master/client/consensus/babe/rpc/src/lib.rs#L102)
### Chain RPC calls
- [x] #1741
* [Substrate reference - `subscribe_all_heads`](https://github.com/paritytech/substrate/blob/master/client/rpc/src/chain/mod.rs#L107)
### Child State RPC calls
- [x] [`getKeys`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#1121-childstate_getkeys)
- [ ] [`getStorage`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#1122-childstate_getstorage)
- [x] [`getStorageHash`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#1123-childstate_getstoragehash)
- [x] [`getStorageSize`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#1124-childstate_getstoragesize)
### Contracts RPC calls
- [ ] [`call`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#1152-contracts_call)
- [ ] [`getStorage`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#1153-contracts_getstorage)
- [ ] [`rentProjection`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#1154-contracts_rentprojection)
### Engine RPC calls
- [ ] [`createBlock`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#1132-engine_createblock)
- [ ] [`finalizeBlock`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#1133-engine_finalizeblock)
### Grandpa RPC calls
- [x] [`proveFinality`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#172-grandpa_provefinality)
- [x] [`roundState`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#171-grandpa_roundstate)
- [x] [`subscribeJustifications`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#173-grandpa_subscribejustifications-pubsub)
### Offchain RPC calls
- [x] [`localStorageGet`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#1104-offchain_localstorageget)
- [x] [`localStorageSet`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#1103-offchain_localstorageset)
### Payment RPC calls
- [x] [`queryInfo`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#1142-payment_queryinfo)
### State RPC calls
- [x] [`getMetadata`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#1119-state_getmetadata)
- [ ] [`state_call`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#1113-state_call)
- [x] [`queryStorage`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#11111-state_querystorage)
- [x] [`subscribeRuntimeVersion`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#11113-state_subscriberuntimeversion-pubsub)
- [x] [`subscribeStorage`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#11115-state_subscribestorage-pubsub)
- [x] [`getReadProof`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#11112-state_getreadproof)
- [x] [`getRuntimeVersion`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#11110-state_getruntimeversion)
### Sync State RPC Calls
- [ ] [`genSyncSpec`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#1171-sync_state_gensyncspec)
### System RPC Calls
- [x] [`accountNextIndex`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#1516-system_accountnextindex)
- [x] [`addReservedPeer`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#1512-system_addreservedpeer)
- [ ] [`dryRun`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#1517-system_dryrun)
- [x] [`localListenAddresses`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#159-system_locallistenaddresses)
- [x] [`localPeerId`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#158-system_localpeerid)
- [x] [`removeReservedPeer`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#1513-system_removereservedpeer)
- [x] [`syncState`](https://github.com/w3f/PSPs/blob/master/PSPs/drafts/psp-6.md#1515-system_syncstate)
Contributor guide
Assessment
This issue has not been assessed yet.