1. Jun 15, 2020
  2. Jun 11, 2020
    • Hernando Castano's avatar
      Add async_trait to SourceClient and TargetClient (#123) · 044e0334
      Hernando Castano authored
      * Use async_trait for SourceClient
      
      * Use aync_trait for TargetClient
      
      * Revert async_trait usage for Source/Target client
      
      This reverts commit f636ffaf.
      This reverts commit 2c15755e
      
      .
      
      I'm having a very hard time finding out what is causing compilation
      issues, and I think it's best to start over again.
      
      * Use async_trait for TargetClient
      
      * Use async_trait for SourceClient
      
      * Move where non-async methods are
      
      * RustFmt
      
      * QueuedHeader holds Arc to actual data
      
      * Clean up async return type
      
      Co-authored-by: default avatarSvyatoslav Nikolsky <[email protected]>
      
      * Clean up async return type
      
      Co-authored-by: default avatarSvyatoslav Nikolsky <[email protected]>
      
      * Clean up async return type
      
      Co-authored-by: default avatarSvyatoslav Nikolsky <[email protected]>
      
      * Remove unused import
      
      Co-authored-by: default avatarSvyatoslav Nikolsky <[email protected]>
      044e0334
    • Svyatoslav Nikolsky's avatar
      Update Substrate to latest master (rc3) (#129) · 688abd31
      Svyatoslav Nikolsky authored
      * Substrate 606c56d2e2f69f68f3947551224be6a3515dff60
      
      * update jsonrpsee
      688abd31
    • Hernando Castano's avatar
      Add diagrams from draw.io (#122) · 36353d11
      Hernando Castano authored
      * Add diagrams from draw.io
      
      I'm trying to figure out how best to share these in such a way that we
      can all contribute to them easily. While integration between draw.io
      and GitHub exists, it requires read/write permissions to all ParityTech
      repos, which doesn't comfort me. I think having the .drawio file and
      the corresponding pictures available in a folder is a good start.
      
      I imagine the workflow would be something like this: Someone wants to
      update a diagram, so they go to draw.io and upload the .drawio file
      from the repo. They make their changes, download the new .drawio file
      and corresponding SVG, and commit their changes to the repo.
      
      * Make diagrams consistent with background/filling
      
      The background for each diagram has been removed (now it's transparent)
      and the boxes that make up the diagrams have gotten a filled in white
      colour. This will make it possible to have these diagrams show up on
      non-white backgrounds.
      
      * Add file for describing diagrams
      
      * Add missing extension
      36353d11
  3. Jun 10, 2020
  4. Jun 08, 2020
  5. Jun 05, 2020
  6. Jun 03, 2020
  7. Jun 02, 2020
  8. Jun 01, 2020
  9. May 27, 2020
  10. 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
  11. May 20, 2020
  12. 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
  13. May 18, 2020
  14. 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
  15. May 11, 2020
  16. May 04, 2020