Skip to content
  1. Jun 01, 2020
  2. May 27, 2020
  3. May 22, 2020
    • Hernando Castano's avatar
      RPC Module for Relays (#80) · 55aa5780
      Hernando Castano authored
      * Test defining an RPC API
      
      * Add wrapper clients for the RPC API
      
      * Implement most Ethereum RPCs
      
      Does not include RPCs that require the bridge contract.
      
      * Implement a few of the Substrate RPCs
      
      Still missing proper error handling, as well as decoding responses from the
      Substrate node.
      
      * Make error handling more ergonomic
      
      * Implement Substrate RPCs that use `state_call`
      
      * Implement rest of Substrate RPCs
      
      * Implement `eth_call` RPC
      
      This can be used to implement higher level requests like fetching Substrate headers
      from an Ethereum node.
      
      * Build some of the higher level Ethereum RPCs
      
      Uses the new Ethereum RPC interface to do so
      
      * Build some of the higher level Substrate RPCs
      
      * Remove old Ethereum RPC methods
      
      * Remove old Substrate RPC methods
      
      * Add some documentation to Substrate RPCs
      
      * Fix typo in enum construction
      
      * Revert commits `0f0435d2` to `ca755029`
      
      This range of commits was mainly trying to integrate the new RPC interface into the existing
      codebase, however this turned out to be a little out of scope for the current PR. Instead this work
      will be incorporated into a PR which aims to close #72.
      
      * Add documentation to RPCs
      
      * Rename functions in RPC API to conform to snake_case
      
      * Check that header contains a number and hash
      
      * Put doc comments on trait instead of impl methods
      
      * Remove expect() calls
      
      * Replace runtime API enums with consts
      
      * Accept Bytes when submitting extrinsic
      
      Let's us avoid using a runtime specific Extrinsic.
      
      * Add strictly typed arguments to RPC API
      
      Missing two methods right now, which require a `serde::Deserialize`
      implemenation before they can be changed.
      
      * Add `chain_getBlock` Substrate RPC
      
      * Use typed arguments for `eth_estimateGas` and `eth_call`
      
      * Silence dead code warnings
      
      * Add check for logs bloom
      
      * Remove unused variables
      
      * Add documentation to RPC error enums
      55aa5780
  4. May 20, 2020
  5. May 19, 2020
    • Hernando Castano's avatar
      Bump rust-web3 to latest v0.11 (#100) · acf24309
      Hernando Castano authored
      * Bump rust-web3 to latest master
      
      * Use tagged release from crates.io
      
      * Add check for `logs_bloom`
      
      Since this is required by the runtime we want to enforce that an
      incoming header has this.
      acf24309
  6. May 18, 2020
  7. May 12, 2020
    • Svyatoslav Nikolsky's avatar
      Process finality proofs in solidity PoA -> Substrate contract (#69) · fb9a31b4
      Svyatoslav Nikolsky authored
      
      
      * solidity contract
      
      * continue
      
      * upd
      
      * cargo update
      
      * fixes
      
      * ehtereum_headers -> headers
      
      * extracted some common stuff
      
      * ethereum_sync.rs -> sync.rs
      
      * make sync generic
      
      * continue extracting
      
      * continue
      
      * add eth-contract argument
      
      * continue
      
      * some fixes
      
      * contract v2
      
      * continue
      
      * more fixes
      
      * more fixes
      
      * deal with duplicated params
      
      * removed multiple call_rpc variants
      
      * bail_on_error!()
      
      * fn submit_ethereum_transaction
      
      * more fixes
      
      * cargo fmt --all
      
      * fix
      
      * bail_on_arg_error!()
      
      * fix
      
      * fix
      
      * remove async_extra stuff
      
      * start work on finality builtin
      
      remove async_extra stuff
      
      continue
      
      continue
      
      local testnet (Alice + Bob) for node
      
      * added TODO
      
      * substrate-bridge.json -> substrate-bridge-abi.json
      
      * get rid of substrate transactions hashes
      
      * get rid of ethereum transactions hashes
      
      * extracted contract bytecode to separate file
      
      * cargo fmt --all
      
      * avoid duplicate import in contracts
      
      * removed Default::default()
      
      * swapped configurations for sub2eth && eth2sub
      
      * fix compilation
      
      * do not double gas limit when submitting Substrate headers
      
      * fix finality storage
      
      * at least 1 validator required
      
      * shift_session_manager_works
      
      * cargo fmt --all
      
      * solidity contract removed
      
      * consts
      
      * extracted solc compilation details to separate file
      
      * removed (obsolete in future Vec<u8> justification)
      
      * fixed cli option description
      
      * fix typos
      
      * fix grumble
      
      * extracted constants
      
      * log decoded header
      
      * new substrate version + actually verify justification
      
      * intermediate cargo fmt --all
      
      * comments
      
      * disable completion data resubmission
      
      * increased timeouts + _MS -> Duration
      
      * forget completion data after submission
      
      * builtin tests
      
      * headers tests
      
      * cargo fmt --all
      
      * update contract
      
      * Update relays/ethereum/src/ethereum_sync_loop.rs
      
      Co-authored-by: default avatarTomasz Drwięga <[email protected]>
      
      * Update relays/ethereum/src/ethereum_sync_loop.rs
      
      Co-authored-by: default avatarTomasz Drwięga <[email protected]>
      
      * added docs
      
      * OwnedFutureOutput
      
      * more docs fixes
      
      * cargo fmt --all
      
      * encode headers
      
      * consts + docs
      
      * aliases again
      
      * cargo fmt --all
      
      * Update relays/ethereum/src/ethereum_sync_loop.rs
      
      Co-authored-by: default avatarTomasz Drwięga <[email protected]>
      
      * Update relays/ethereum/src/ethereum_sync_loop.rs
      
      Co-authored-by: default avatarTomasz Drwięga <[email protected]>
      
      * Use Duration::from_secs() instead of from_millis()
      
      * grumbles
      
      * Update relays/ethereum/src/headers.rs
      
      Co-authored-by: default avatarHernando Castano <[email protected]>
      
      * Update relays/ethereum/src/headers.rs
      
      Co-authored-by: default avatarHernando Castano <[email protected]>
      
      * incomplete_headers_are_still_incomplete_after_advance
      
      * add hex-encoded headers to substrate_header_without_signal_parsed
      
      * cargo fmt --all
      
      * Update relays/ethereum/src/sync_loop.rs
      
      Co-authored-by: default avatarHernando Castano <[email protected]>
      
      * Update relays/ethereum/src/headers.rs
      
      Co-authored-by: default avatarHernando Castano <[email protected]>
      
      * Update relays/ethereum/src/headers.rs
      
      Co-authored-by: default avatarHernando Castano <[email protected]>
      
      * Update relays/ethereum/src/headers.rs
      
      Co-authored-by: default avatarHernando Castano <[email protected]>
      
      * Update relays/ethereum/src/headers.rs
      
      Co-authored-by: default avatarHernando Castano <[email protected]>
      
      * Update relays/ethereum/src/headers.rs
      
      Co-authored-by: default avatarHernando Castano <[email protected]>
      
      * Update relays/ethereum/src/headers.rs
      
      Co-authored-by: default avatarHernando Castano <[email protected]>
      
      * Update relays/ethereum/src/headers.rs
      
      Co-authored-by: default avatarHernando Castano <[email protected]>
      
      * added comments on Extra and Completion
      
      Co-authored-by: default avatarTomasz Drwięga <[email protected]>
      Co-authored-by: default avatarHernando Castano <[email protected]>
      fb9a31b4
  8. May 11, 2020
  9. May 04, 2020
  10. Apr 29, 2020
    • Svyatoslav Nikolsky's avatar
      Solidity contract that accepts unverified substrate headers (#65) · 9993873c
      Svyatoslav Nikolsky authored
      * solidity contract
      
      * continue
      
      * upd
      
      * cargo update
      
      * fixes
      
      * ehtereum_headers -> headers
      
      * extracted some common stuff
      
      * ethereum_sync.rs -> sync.rs
      
      * make sync generic
      
      * continue extracting
      
      * continue
      
      * add eth-contract argument
      
      * continue
      
      * some fixes
      
      * contract v2
      
      * continue
      
      * more fixes
      
      * more fixes
      
      * deal with duplicated params
      
      * removed multiple call_rpc variants
      
      * bail_on_error!()
      
      * fn submit_ethereum_transaction
      
      * more fixes
      
      * cargo fmt --all
      
      * fix
      
      * bail_on_arg_error!()
      
      * fix
      
      * fix
      
      * remove async_extra stuff
      
      * substrate-bridge.json -> substrate-bridge-abi.json
      
      * get rid of substrate transactions hashes
      
      * get rid of ethereum transactions hashes
      
      * extracted contract bytecode to separate file
      
      * cargo fmt --all
      
      * avoid duplicate import in contracts
      
      * removed Default::default()
      
      * swapped configurations for sub2eth && eth2sub
      
      * fix compilation
      
      * do not double gas limit when submitting Substrate headers
      
      * cargo fmt --all
      
      * solidity contract removed
      
      * consts
      
      * extracted solc compilation details to separate file
      
      * removed (obsolete in future Vec<u8> justification)
      
      * fixed cli option description
      
      * fix typos
      
      * fix grumble
      
      * extracted constants
      
      * log decoded header
      
      * cargo fmt --all
      
      * comment
      9993873c
  11. Apr 28, 2020
  12. Apr 13, 2020
  13. Apr 08, 2020
  14. Apr 07, 2020
  15. Apr 06, 2020
  16. Mar 30, 2020
  17. Mar 23, 2020
  18. Mar 19, 2020
    • Hernando Castano's avatar
      Run RustFmt as part of the CI (#37) · e030497c
      Hernando Castano authored
      * Run RustFmt as part of the CI
      
      * Format repo
      
      * Run RustFmt before the default Travis build step
      
      Apparently if you override `script` you also need to make
      sure to `build` and `test` the code yourself.
      
      * Format repo
      e030497c
  19. Mar 17, 2020
    • Hernando Castano's avatar
      Get Ethereum Relay to Compile (#21) · 1eb8f879
      Hernando Castano authored
      * Update dependencies
      
      Upgrades Substrate based dependencies from v2.0.0 -> v2.0.0-alpha.1
      and uses the `jsonrpsee`'s new feature flags. The actual code hasn't
      been updated though, so this won't compile.
      
      * Use `RawClient`s from `jsonrpsee`
      
      * Update to use jsonrpsee's new API
      
      * Hook up Ethereum Bridge Runtime, Relay, and Node Runtime
      
      * Bump `parity-crypto` from v0.4 to v0.6
      
      Fixes error when trying to compile tests. This was caused by
      `parity-crypto` v0.4's use of `parity-secp256k1` over `secp256k1'.
      Using the Parity fork meant multiple version of the same underlying
      C library were being pulled in. `parity-crypto` v0.6 moved away from
      this, only relying on `secp256k1` thus fixing the issue.
      1eb8f879
  20. Mar 13, 2020
  21. Mar 12, 2020
  22. Mar 09, 2020
  23. Mar 07, 2020
  24. Mar 02, 2020
    • Hernando Castano's avatar
      Move `substrate-bridge-relay` into repository (#1) · 907e9f85
      Hernando Castano authored
      
      
      * Initial commit. CLI which parses RPC urls.
      
      * Establish ws connections and make simple RPC requests.
      
      * Complete bridge setup.
      
      * Process subscription events.
      
      * Ctrl-C handler.
      
      * Write a bare-bones README and copy in design doc.
      
      * Modularize code a little bit.
      
      * Communicate with each chain in a separate task.
      
      * Parse headers from RPC subscription notifications.
      
      * Send (fake) extrinsics across bridge channels.
      
      And now it's deadlocked.
      
      * Fix deadlock.
      
      * Clarify in README that this is not-in-progress.
      
      * Move everything into a single folder
      
      * Move Substrate relay into appropriate folder
      
      * Get the Substrate Relay node compiling
      
      * Update Cargo.lock
      
      * Use new composite accounts from Substrate
      
      * Remove specification document
      
      It has been moved to the Wiki on the Github repo.
      
      * Update author + remove comments
      
      * Use latest master for jsonrpsee
      
      Required renaming some stuff (e.g Client -> RawClient)
      
      Co-authored-by: default avatarJim Posen <[email protected]>
      907e9f85
  25. Feb 03, 2020
    • Hernando Castano's avatar
      Squashed commit adding admin files: · 91bacb14
      Hernando Castano authored
      commit 13c9db4a90df62bec88ab0426f1e568aab1ecf8a
      Author: Hernando Castano <[email protected]>
      Date:   Sun Feb 2 22:02:38 2020 -0500
      
          Add README file
      
      commit adf214d0506ba10bbeb3bca8578fd1926d818187
      Author: Hernando Castano <[email protected]>
      Date:   Sun Feb 2 21:52:09 2020 -0500
      
          Add EditorConfig file
      
      commit 23b633e9df4bfd72fb10e57a4fd5d7e53755b490
      Author: Hernando Castano <[email protected]>
      Date:   Sun Feb 2 21:51:58 2020 -0500
      
          Move License to top level and remove .keep files
      91bacb14
    • Hernando Castano's avatar
      Squashed commit of Rust-ifying the repo: · b26d005d
      Hernando Castano authored
      commit e31c1965a2e6b9a21ce68be63b81915b2b090f1d
      Author: Hernando Castano <[email protected]>
      Date:   Sun Feb 2 21:15:42 2020 -0500
      
          Get Ethereum bridge module compiling
      
      commit a497fc1640e68682f61b39414ffb15206c6120e2
      Author: Hernando Castano <[email protected]>
      Date:   Thu Jan 30 12:15:43 2020 -0500
      
          Make the toml file look a bit better
      
      commit 898fb7b06cfac7cf866e1a28fed9a4f02bd246a7
      Author: Hernando Castano <[email protected]>
      Date:   Thu Jan 30 12:06:27 2020 -0500
      
          Get substrate bridge module compiling
      
      commit 81e1547e6bec9f590cad9ffba0ee5dfa82cda1c1
      Author: Hernando Castano <[email protected]>
      Date:   Thu Jan 30 11:40:29 2020 -0500
      
          Create workspace and move more files around
      b26d005d