- Apr 09, 2024
-
-
Svyatoslav Nikolsky authored
* backoff on connection-unrelated errors * cargo fmt --all * Fix some typos Co-authored-by: Hernando Castano <[email protected]>
-
dependabot-preview[bot] authored
-
Denis S. Soldatov aka General-Beck authored
* Add cargo deny * deny - master * Copy deny.toml to . * cargo deny check * upload artifacts * install cargo deny * typo * up install cargo deny * update archive * typo * path's * allow failure cargo deny * allew failure log * cargo deny init * add deny.toml and compare with embark actions * fix options * Fix cargo deny. * Remove cargo audit (same as deny) Co-authored-by: Tomasz Drwięga <[email protected]>
-
Svyatoslav Nikolsky authored
* ease serde version requirements (to build OE with builtin) * trace + fix completion notifications * check incompletion on submit * fix compilation * do not ask for synced blocks when queue is empty * cargo fmt --all * Update relays/ethereum/src/ethereum_client.rs Co-authored-by: Tomasz Drwięga <[email protected]> * remove closure * fn submit_substrate_header() -> Option<RpcError> Co-authored-by: Tomasz Drwięga <[email protected]>
-
Svyatoslav Nikolsky authored
* sign PoA transactions from wasm env * cargo fmt --all
-
Svyatoslav Nikolsky authored
* use deposit_creating in DepositInto * Update modules/currency-exchange/src/lib.rs Co-authored-by: Tomasz Drwięga <[email protected]> * Update primitives/currency-exchange/src/lib.rs Co-authored-by: Tomasz Drwięga <[email protected]> Co-authored-by: Tomasz Drwięga <[email protected]>
-
dependabot-preview[bot] authored
-
dependabot-preview[bot] authored
-
Svyatoslav Nikolsky authored
* runtime benchmarks: start * merge tests + benchmarks infrastructure * fix compilation * Fix compilation issues with runtime-benchmark feature flag Mainly involved pulling in correct dependencies and adding some functions which were called but didn't yet exist. * Fix broken compilation for tests * Move header signing methods into trait * Move signing related test helpers to own module * Remove comment about feature flag * Add constants to tests * Add top level comment for testing utilities Co-authored-by: Hernando Castano <[email protected]>
-
Hernando Castano authored
* Move EthereumRpc implementation to Eth client * Move SubstrateRpc implementation to SubstrateClient * Update deploy_contract to use new RPC interface * Fix some types in the Substrate client * Swap out method bodies in Eth sync loop * Swap out method bodies in Substrate sync loop * Remove Client from SourceClient trait return types * Remove Client from TargetClient trait return types * Remove client from Source select! arms * Remove client from Target select! arms * Add missing mutable refs in Substrate client * Use mutable references in Source/Target Client traits * Try and use mutable references in Source/Client trait implementations * Handle errors more gracefully * Remove unused imports * Remove dead_code and unused_variables lints * Remove usage of `jsonrpsee::RawClient` By using a `jsonrpsee::Client` we are able to remove all the shared mutable references required when interacting with the RPC server. This is convenient as trying to sharing mutable references in code that uses async/await is a bit of a pain. However, using a `Client` instead of a `RawClient` is not yet supported by the `jsonrpsee::rpc_api` macro, so a fork must be used for the moment. * Clean up dead code and warnings * Clean up higher level RPCs Some of the RPCs that were "high level" didn't necessarily belong as part of the trait, so they were removed. * Use positional parameters for RPCs Both Substrate and Ethereum's RPCs use positional (array) parameters, so in order to be compatible with both we need to make sure that our API is defined with positional paramters in mind. * Rename argument for eth_getBlockByNumber * Remove some unecessary Ok-wraps * Process client requests synchonously Before the refactoring the sync loop would wait until a client finished handling a request before issuing another one. This behaviour was inadvertently changed during the refactoring leading to race conditions. This commit makes sure that the previous behaviour is respected. * Reduce the errors that are considered a connection error * Only decode bridge contract once * Set genesis_config at RPC client startup * Fetch genesis hash in SubstrateRpcClient::new() * Move Decode error into SubstrateNodeError * Suppress warnings caused by `rpc_api!` * Implement From RpcError for String * Handle Substrate client initalization errors more gracefully * Remove match in favour of ? Co-authored-by: Svyatoslav Nikolsky <[email protected]>
-
Tomasz Drwięga authored
* Update web3 dependency. * Switch to crates.io.
-
dependabot-preview[bot] authored
Bumps [structopt](https://github.com/TeXitoi/structopt) from 0.3.14 to 0.3.15. - [Release notes](https://github.com/TeXitoi/structopt/releases) - [Changelog](https://github.com/TeXitoi/structopt/blob/master/CHANGELOG.md) - [Commits](https://github.com/TeXitoi/structopt/compare/v0.3.14...v0.3.15) Signed-off-by: dependabot-preview[bot] <[email protected]> Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
-
dependabot-preview[bot] authored
Bumps [derive_more](https://github.com/JelteF/derive_more) from 0.99.7 to 0.99.8. - [Release notes](https://github.com/JelteF/derive_more/releases) - [Changelog](https://github.com/JelteF/derive_more/blob/master/CHANGELOG.md) - [Commits](https://github.com/JelteF/derive_more/compare/v0.99.7...v0.99.8) Signed-off-by: dependabot-preview[bot] <[email protected]> Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
-
dependabot-preview[bot] authored
Bumps [async-trait](https://github.com/dtolnay/async-trait) from 0.1.35 to 0.1.36. - [Release notes](https://github.com/dtolnay/async-trait/releases) - [Commits](https://github.com/dtolnay/async-trait/compare/0.1.35...0.1.36) Signed-off-by: dependabot-preview[bot] <[email protected]> Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
-
dependabot-preview[bot] authored
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.112 to 1.0.114. - [Release notes](https://github.com/serde-rs/serde/releases) - [Commits](https://github.com/serde-rs/serde/compare/v1.0.112...v1.0.114) Signed-off-by: dependabot-preview[bot] <[email protected]> Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
-
Svyatoslav Nikolsky authored
* Error::TryingToFinalizeSibling * cargo fmt --all * updated PruningStrategy comment
-
Svyatoslav Nikolsky authored
* move pruning strategy to runtim level * cargo fmt --all * Update modules/ethereum/src/lib.rs Co-authored-by: Hernando Castano <[email protected]> * finalize_headers -> finalize_and_prune_headers * PruningStrategy::default() * fn import_of_non_best_block_may_finalize_blocks() Co-authored-by: Hernando Castano <[email protected]>
-
dependabot-preview[bot] authored
-
dependabot-preview[bot] authored
-
dependabot-preview[bot] authored
-
Hernando Castano authored
* Use async_trait for SourceClient * Use aync_trait for TargetClient * Revert async_trait usage for Source/Target client This reverts commit f636ffaffd60197e90e887362b4a0c35a0dc5a6c. This reverts commit 2c15755e8c93318f8e0a605852efe87d72edb769. 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: Svyatoslav Nikolsky <[email protected]> * Clean up async return type Co-authored-by: Svyatoslav Nikolsky <[email protected]> * Clean up async return type Co-authored-by: Svyatoslav Nikolsky <[email protected]> * Remove unused import Co-authored-by: Svyatoslav Nikolsky <[email protected]>
-
Svyatoslav Nikolsky authored
* Substrate 606c56d2e2f69f68f3947551224be6a3515dff60 * update jsonrpsee
-
Svyatoslav Nikolsky authored
* removeInMemoryStorage + extract Kovan stuff to runtime * removed comment from the future * remove redundant conversions * remove redundant `u8 as usize` * remove redundant `u8 as usize` * Update modules/ethereum/src/mock.rs Co-authored-by: Hernando Castano <[email protected]> * use hex-literal in kovan config * cargo fmt --all * extracted insert_header * cargo fmt --all * finality cache * cargo fmt --all * cargo fmt --all * impl Default for FinalityVotes Co-authored-by: Hernando Castano <[email protected]> Co-authored-by: Hernando Castano <[email protected]>
-
Tomasz Drwięga authored
* Revert "Bump async-std from 1.5.0 to 1.6.0 (#126)" This reverts commit 3c15a65929447a12aa23c1f34c9b783d117deed2. * Add async-std=1.6 to ignore.
-
dependabot-preview[bot] authored
-
dependabot-preview[bot] authored
-
dependabot-preview[bot] authored
-
Hernando Castano authored
* Add descriptions for folder structure + node * Beef up descriptions of project components * Fix list formatting * Add note about nightly Rust * Update README.md Co-authored-by: Tomasz Drwięga <[email protected]> * Update README.md Co-authored-by: Tomasz Drwięga <[email protected]> * Reword Tomek's currency-exchange suggestion * Add link to Substrate's installation guide Co-authored-by: Tomasz Drwięga <[email protected]>
-
Svyatoslav Nikolsky authored
* ethereum exchange module * continue * continue * added tests for exchange module * moved * remove println * move again * fixes * removed redundant deps * cargo fmt * fund_locks_transaction_decode_works * cargo fmt --all * fix error processing * added some tracing to bridge modules * more tests * more tests * cargo fmt --all * kovan.rs -> exchange.rs * Update bin/node/runtime/src/exchange.rs Co-authored-by: Tomasz Drwięga <[email protected]> * added assumption doc * Airdrop -> DepositInto * AsIs -> Identity * OnTransactionSubmitted * Transfers::Key = Id * typo * Update bin/node/runtime/src/exchange.rs Co-authored-by: Tomasz Drwięga <[email protected]> * block+tx+proof -> proof { block, tx, proof } * cargo fmt --all * docs * check <-> verify * parse hex * extracted exchange primitives to separate crate * added docs to runtime::exchange module * Update bin/node/runtime/src/exchange.rs Co-authored-by: Hernando Castano <[email protected]> * typo * Update modules/currency-exchange/Cargo.toml Co-authored-by: Hernando Castano <[email protected]> * add docs to currency-exchange module * change tests names * cargo fmt --all * Update bin/node/runtime/src/exchange.rs Co-authored-by: Hernando Castano <[email protected]> * Update bin/node/runtime/src/exchange.rs Co-authored-by: Hernando Castano <[email protected]> * Update bin/node/runtime/src/exchange.rs Co-authored-by: Hernando Castano <[email protected]> * Update bin/node/runtime/src/exchange.rs Co-authored-by: Hernando Castano <[email protected]> * Update bin/node/runtime/src/exchange.rs Co-authored-by: Hernando Castano <[email protected]> * fixed verify_transaction_finalized for siblings of finalized blocks * cargo fmt --all * added double spend note * cargo fmt --all Co-authored-by: Tomasz Drwięga <[email protected]> Co-authored-by: Hernando Castano <[email protected]>
-
Svyatoslav Nikolsky authored
* bump substrate * cargo fmt --all
-
Svyatoslav Nikolsky authored
* removeInMemoryStorage + extract Kovan stuff to runtime * removed comment from the future * limit number of headers that are pruned within single import Call * verify that pruning range upper bottom is always-increasing * Fix typo Co-authored-by: Hernando Castano <[email protected]>
-
Svyatoslav Nikolsky authored
-
Svyatoslav Nikolsky authored
* removeInMemoryStorage + extract Kovan stuff to runtime * removed comment from the future * remove redundant conversions * remove redundant `u8 as usize` * remove redundant `u8 as usize` * Update modules/ethereum/src/mock.rs Co-authored-by: Hernando Castano <[email protected]> * use hex-literal in kovan config * cargo fmt --all * extracted insert_header * cargo fmt --all Co-authored-by: Hernando Castano <[email protected]>
-
dependabot-preview[bot] authored
-
dependabot-preview[bot] authored
-
dependabot-preview[bot] authored
-
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 `0f0435d` to `ca75502` 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
-
Hernando Castano authored
* Use `CallRequest` type from rust-web3 crate * Change CallRequest's `to` field to be optional Required due to changes in upstream `rust-web3` crate.
-
Svyatoslav Nikolsky authored
* mute warnings from sub2sub module+relay * cargo fmt --all
-
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.
-