Skip to content

Commit

Permalink
Parachain client implementation (#5)
Browse files Browse the repository at this point in the history
* add function to instantiate parachain client

* implement finality notification for parachains

* implement fetching mmr update proof

* some progress

* custom events

* add some useful comments

* query connection events

* Update src/chain/parachain.rs

Signed-off-by: Web3 Smith <31099392+Wizdave97@users.noreply.github.com>

* read events to find out ibc messages

* channel events

* handle connection events

* minor fix

* fetch connection end with proof

* channel messages

* packet messages

* IbcProvider

* adds cargo fmt

* look ma, no errors :D

* minor fix

* update chain implementation for parachains

* minor fix

* fix build errors

* fix

* fix comments

* implement parachain query functions

* get packet timeout messages

* define and implement key provider trait

* submit extrinsics to parachain

* refactor extrinsic signer and key provider

* statically define pallet ibc calls

* use latest metadata when submitting extrinsics

* allow multiple schemes in parachain keyprovider trait

* implement submitting create message client to parachain

* add comments

* some comments

* some changes

* update trait implementations

* rehydrate client state

* update account id definition in key provider

* updated latest height query for parachain client

* use the same function to submit all sudo calls

* parachain ibc test

* token transfer test

* update setup function

* implement stream for latest ibc events

* use event stream in setup function

* updated tests to use event stream

* minor fix

* ibc event stream

* minor fix

* fixes commitment decoding and subxt metadata

* refactor

* update latest height function

* restructuring

* fix sudo call encoding

* better error messages

* ok so we can create connections

* pass signature as associated type

* fix signed_commitment decoding

* create more specific error variants

* minor fix

* dynamically build subxt from running node

* elide lifetimes

* update errors

* rename methods

* print finalized heads

* print finalized heads

* print leaf indices

* query_latest_ibc_events now works

* update consensus state

* client state update works

* minor fix

* wip

* refactor relayer code

* finished

* turn on build scripts

* remove client state caching

* todo: remove caching

* removes all caching

* better checks

* remove beefy height cache

* wait for client update event on both chains

* update client after creation

* fix connection creation issue

* wait for parachains to start producing blocks

* connection proofs wip

* read_child_proof_check works

* fix ping params

* adds test for sendping

* update ibc ping calls

* update ibc-rs

* wip

* minimal logging

* more logs

* can now use jsonrpsee generated methods for queries

* use typed interface for all rpc queries

* update calls

* add todo

* create individual clients

* token transfer test

* minor fix

* temp fix

* update toml file

* update toml

* send tokens forward and backwards

* fix duplicate message submissions

* remove query_client_state_from

* refactor ping test

* use env_logger

* some more logging stuff

* log event names only

Signed-off-by: Web3 Smith <31099392+Wizdave97@users.noreply.github.com>
Co-authored-by: Seun Lanlege <seunlanlege@gmail.com>
Co-authored-by: Web3 Philosopher <seun@composable.finance>
  • Loading branch information
3 people authored Aug 18, 2022
1 parent a3f3e3c commit c02e848
Show file tree
Hide file tree
Showing 26 changed files with 8,316 additions and 484 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
/target
.idea
*.log
.cargo
Loading

0 comments on commit c02e848

Please sign in to comment.