cosmjs icon indicating copy to clipboard operation
cosmjs copied to clipboard

Add functionality needed for relayer

Open ethanfrey opened this issue 4 years ago • 2 comments

A number of missing APIs that I found when sketching out the relayer. Most are available in lower-level, but it would be good to expose them.

Missing from stargate/SigningStargateClient:

  • [ ] getCommit - Return header and all validator signatures. This is available as this.tmClient.commit(height?: number) PR #633 but likely not needed
  • [x] queryClient doesn't include IBCExtension. (in v0.24.0-alpha.19)
  • [ ] Helpers for creating IBC messages. Minimal set: CreateClient, UpdateClient, ConnOpenInit, ConnOpenTry, ConnOpenAck, ConnOpenConfirm, ChanOpenInit, ChanOpenTry, ChanOpenAck, ChanOpenConfirm, ReceivePacket, ReceiveAcknowledgement, ReceiveTImeout (see https://github.com/cosmos/cosmjs/issues/636)

(I will add more when I find them)

ethanfrey avatar Jan 26 '21 16:01 ethanfrey

Default StargateClient includes the IBC extension as of https://github.com/cosmos/cosmjs/pull/630

willclarktech avatar Jan 26 '21 16:01 willclarktech

Awesome, I will pull in main and double-check. This checklist is still a work in progress, no need to act on it yet, we can review Thursday to see what is already doable.

ethanfrey avatar Jan 26 '21 16:01 ethanfrey

As far as I can tell those issues have been resolved. Let's create specific follow-ups when needed.

When it comes to accessing lower level Tendermint RPC calls it makes sense to create a Tendermint34Client directly. As of https://github.com/cosmos/cosmjs/pull/1376 you can stick your manually created TendermintClient in a SigningStargateClient or SigningCosmWasmClient.

webmaster128 avatar Mar 07 '23 14:03 webmaster128