dependabot-preview[bot]
fe2d786f13
Bump serde_json from 1.0.57 to 1.0.58 ( #396 )
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
87ea31a439
Bump async-trait from 0.1.40 to 0.1.41 ( #395 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
07a514e9f7
Get substrate dependencies from crates io ( #387 )
...
* get Substrate dependencies from crates.io
* removing unused dependencies
* cargo fmt --all
* remove commented dependencies
* remove commented dependencies again
* try to fix compilation
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
f43e405b5e
update async-std ( #388 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
52c1913fff
Extract minimal Rialto-Sub and Millau-Sub clients ( #365 )
...
* extracting sub clients
* fmt + lost docs
* revert enum BridgeInstance
* apply suggestions from review
* explicite debug impl
* remove unused imports from Millau
* fix typo
* fix instance + API name
* Update relays/ethereum/src/ethereum_sync_loop.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* separate crates for millau and rialto client
* cargo fmt
* fix
* fmt
* remove no_std support
* fix compilation again
* Update relays/substrate-client/Cargo.toml
* Update relay clients to Substrate 2.0
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
Co-authored-by: Hernando Castano <castano.ha@gmail.com >
2024-04-10 10:28:37 +02:00
Tomasz Drwięga
be050bda84
Bump Substrate to v2.0.0 ( #382 )
...
* Change script to update versions.
* Bump versions.
* Address remainders.
* cargo fmt --all
* Fix tests.
* Whitelist BlueOak license
* Fix benchmarks?
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
ec34870eab
Extract minimal ethereum client ( #359 )
...
* relay-ethereum-client
* use relay-ethereum-client from ethereum-poa-relay
* cargo fmt --all
* #![warn(missing_docs)]
* EthereumRpcClient -> EthereumClient
* make EthereumHeadersSyncPipeline private
* return concrete type from crate::new
* cleanup dependencies
* *self -> self
* remove trait Client
* sort deps
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
d614cdaba8
Extract (headers, exchange, messages) relay loops into separate crates ( #357 )
...
* extracted relay crates
* moved metrics to utils
* exchange-relay compilation
* fix compilation of headers-relay
* fixed messages-relay compilation
* fixed ethereum-poa-relay compilation
* cargo lock
* cargo fmt --all
* clippy
* cargo fmt --all
* fix tests compilation
* clippy
* eof
* module level docs
* removed obsolete comment
* #![warn(missing_docs)]
* .0 -> Deref
* post-merge fix
* cargo fmt
* Update relays/headers-relay/src/headers.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* Update relays/headers-relay/src/headers.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* Update relays/headers-relay/src/lib.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
d8ae786792
Prepare separate runtime for testing sub2sub bridge ( #341 )
...
* renamed bin/node/runtime to bin/node/rialto-runtime
* replaced bridge-node-runtime references with rialto-runtime references
* separate folders for millau/rialto nodes+runtimes
* extracted pallet-shift-session-manager
* bridge-node -> bridge-node-runtime
* uninstall previous rust (temp solution???)
* fix dockerfile
* cargo fmt
* fix benchmarks check
* fix benchmarks again
* update LAST_RUST_UPDATE to clear the cache
* changed runtime comments
* move bin/node/* to bin/
* REVERT ME
* Revert "REVERT ME"
This reverts commit 7c335f946308ed11d9ed6ffec7c1c13dbe2743ed.
* specify container name
* REVERT ME
* container_name -> hostname
* fix typo
* aliases
* Revert "REVERT ME"
This reverts commit 0e74af5f8430f1975a3fc924d8b52079f266bda1.
* removed prefixes
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
112e60439a
Bump async-trait from 0.1.38 to 0.1.40 ( #329 )
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
933a8e9252
Bump async-trait from 0.1.37 to 0.1.38 ( #306 )
...
Bumps [async-trait](https://github.com/dtolnay/async-trait ) from 0.1.37 to 0.1.38.
- [Release notes](https://github.com/dtolnay/async-trait/releases )
- [Commits](https://github.com/dtolnay/async-trait/compare/0.1.37...0.1.38 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com >
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Svyatoslav Nikolsky <svyatonik@gmail.com >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
b7cb0623d4
Update substrate reference to rc6 ( #321 )
...
* update substrate to rc6
* clippy
* fixed benchmarks compilation
* Update bin/node/node/src/service.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
4ddb8b1e7a
Bump clap from 2.33.2 to 2.33.3 ( #284 )
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
0900573706
Bump async-trait from 0.1.36 to 0.1.37 ( #283 )
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
761882e06b
Bump clap from 2.33.1 to 2.33.2 ( #279 )
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
4545931e02
Bump async-stream from 0.2.1 to 0.3.0 ( #278 )
2024-04-10 10:28:37 +02:00
Hernando Castano
9f6bd28384
Rename Primitive Crates ( #271 )
...
* Rename Ethereum PoA primitives crate
The "sp" prefix comes from Substrate primitives, since this crate originated
in that repo. However, it is not part of Substrate anymore and its name should
be updated to reflect that.
* Rename currency exchange primitives
* Rust Fmt
* Update import in benchmarking module
* Rust Fmt
* Split pub and no-pub
* Sort toml files.
Co-authored-by: Tomasz Drwięga <tomasz@parity.io >
2024-04-10 10:28:37 +02:00
Hernando Castano
6fd1651b21
Bump Substrate to RC5 ( #243 )
...
* Bump Substrate to rc5
* Bump async-std to v1.6.2
There was a bug in v.1.6.0 which kept us locked to v1.5 releases.
I think that's fixed now so I'm bumping this.
* Update bridge node runtime
* Update node service
* Update CLI
* Add SystemWeightInfo type to test runtimes
* Add RPC extension builder to service
* Directly return rpc_extensions_builder
* Allow complex types in service
This comes from Substrate, so I'd rather just keep the code as is
* Update benchmarking code for new CLI
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
fddfbb5b1c
Submit exchange transactions to PoA node ( #229 )
...
* submit Eth exchange transactions
* submit ethereum in docker-compose
* submit Eth exchange transactions
* fix duplicate message
* fix relay script
* lost file
* cargo fmt --all
* cargo +nightly clippy
* Show sccache
* remove test-helpers remains
* what's going on with jsonrpsee + Cargo.lock?
* relay-eth-submit-exchange-tx -> poa-exchange-tx-generator
* Update relays/ethereum/src/main.rs
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
* configuring exchange-gen loop using env variables
* fixed signer account from dev chain to Arthur
* improve debug prints
* parse nonce from relay output
* --eth-nonce=
* fix compilation
* cargo fmt --all
* fix typo
* duplicate relay output to tty
* allow using from bash scripts tests
* fix: U256::parse() expects hex string :/
* cargo fmt --all
* BRIDGE_HASH: ${BRIDGE_HASH:-master}
* script comment
* generate exchange PoA transactions by Bertha
* Bertha address
Co-authored-by: Denis S. Soldatov aka General-Beck <general.beck@gmail.com >
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
c4424e5b73
Auto relay exchange transactions ( #227 )
...
* auto relay exchange transactions
* docker + auto-relay-tx
* clippy
* jsonrpsee in Cargo.lock ???
* fix tests compilation
* Show sccache
* mute clippy
* move
* Update relays/ethereum/src/exchange.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* finish comment
* (bool, String) -> StringifiedMaybeConnectionError
* Update deployments/rialto/docker-compose.yml
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
Co-authored-by: Denis S. Soldatov aka General-Beck <general.beck@gmail.com >
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
112eb86b8f
Bump serde_json from 1.0.56 to 1.0.57 ( #235 )
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
06236a37dd
Bump sysinfo from 0.14.13 to 0.15.0 ( #234 )
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
65852944e3
Bump log from 0.4.8 to 0.4.11 ( #224 )
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
fed1251030
Bump sysinfo from 0.13.4 to 0.14.13 ( #225 )
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
33b1780da8
Bump backoff from 0.1.6 to 0.2.1 ( #222 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
8121b3f82b
Relay dashboard ( #191 )
...
* expose metrics for Prometheus
* added preconfigured configs for Prometheus and Grafana
* metrics-related cli args
* fix compilation
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
ebdfffc4b1
Fixed best_ethereum_block() call parameters encoding ( #188 )
...
* fixed best_ethereum_block() params encoding
* updated versions
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
a7208c05e0
Relay PoA lock-funds transactions proofs ( #177 )
...
* relay exchange transaction(s)
* fixed Ethereum::get_block_by_hash
* added exchange trace
* fixed method name
* update for new web3
* svyatonik/rust-web3 -> tomusdrw/rust-web3
* if let Some() -> .expect()
* extracted loops in separate functions
* use yaml references (TIL)
* get eth header with transactions
* cargo fmt --all
* Update primitives/ethereum-poa/src/lib.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* Update relays/ethereum/src/ethereum_exchange.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* Update relays/ethereum/src/rpc_errors.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* Update relays/ethereum/src/exchange.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* removed comment
* Update relays/ethereum/src/ethereum_exchange.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* Update relays/ethereum/src/ethereum_exchange.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* module-level comments
* updated readme
* use web3 from crates.io
* added missing fields info in error description
* cargo fmt --all
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
2024-04-10 10:28:37 +02:00
Hernando Castano
3236aa8000
Update Substrate to rc4 ( #175 )
...
* Bump Substrate to rc4
* Add BaseCallFilter type
* Add DenyUnsafe to SystemApi extension
* Use new ServiceBuilder build functions
* Add BaseCallFilter to test runtimes
* Remove old comments
* Add `rev` and `git` fields back
Turns out that if you don't have these future release candidates will
be used if available. For instance, once `rc5` is released a fresh pull
would use that instead of `rc4` which is what we want.
* Use tag release instead of specific commit
Will make scripted updates easier in the future
* Add short script to update between `rc` versions
* Update scripts/update_rc.sh
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
1cd7be9214
Backoff on connection-unrelated errors ( #178 )
...
* backoff on connection-unrelated errors
* cargo fmt --all
* Fix some typos
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
8fd0a4688f
Bump serde_json from 1.0.55 to 1.0.56 ( #173 )
2024-04-10 10:28:37 +02:00
Denis S. Soldatov aka General-Beck
e9a67d334c
Add cargo deny ( #166 )
...
* 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 <tomasz@parity.io >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
456515e08b
Fix sub2eth synchronization ( #172 )
...
* 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 <tomusdrw@users.noreply.github.com >
* remove closure
* fn submit_substrate_header() -> Option<RpcError>
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
6d569086bd
Bump parking_lot from 0.10.2 to 0.11.0 ( #151 )
2024-04-10 10:28:37 +02:00
Hernando Castano
ea45fa8da7
Switch to new RPC interface ( #131 )
...
* 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 <svyatonik@gmail.com >
2024-04-10 10:28:37 +02:00
Tomasz Drwięga
ba3b8537a5
Update web3 dependency. ( #140 )
...
* Update web3 dependency.
* Switch to crates.io.
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
b088efee32
Bump async-trait from 0.1.35 to 0.1.36 ( #145 )
...
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] <support@dependabot.com >
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
c005fdd79c
Bump serde from 1.0.112 to 1.0.114 ( #144 )
...
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] <support@dependabot.com >
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
7513775676
Bump serde from 1.0.111 to 1.0.112 ( #133 )
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
90641e065a
Bump async-trait from 0.1.33 to 0.1.35 ( #135 )
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
1dbbfe2daa
Bump serde_json from 1.0.53 to 1.0.55 ( #134 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
b701c2be8d
Update Substrate to latest master (rc3) ( #129 )
...
* Substrate 606c56d2e2f69f68f3947551224be6a3515dff60
* update jsonrpsee
2024-04-10 10:28:37 +02:00
Tomasz Drwięga
ca8b370de2
Revert "Bump async-std from 1.5.0 to 1.6.0" ( #127 )
...
* Revert "Bump async-std from 1.5.0 to 1.6.0 (#126 )"
This reverts commit 3c15a65929447a12aa23c1f34c9b783d117deed2.
* Add async-std=1.6 to ignore.
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
bad7e7c1d0
Bump async-std from 1.5.0 to 1.6.0 ( #126 )
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
6b13a6f560
Bump async-trait from 0.1.31 to 0.1.33 ( #125 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
7294ea44e1
Claim funds on Substrate chain by providing proof of funds locking on PoA chain ( #91 )
...
* 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 <tomusdrw@users.noreply.github.com >
* 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 <tomusdrw@users.noreply.github.com >
* 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 <HCastano@users.noreply.github.com >
* typo
* Update modules/currency-exchange/Cargo.toml
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* add docs to currency-exchange module
* change tests names
* cargo fmt --all
* Update bin/node/runtime/src/exchange.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* Update bin/node/runtime/src/exchange.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* Update bin/node/runtime/src/exchange.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* Update bin/node/runtime/src/exchange.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* Update bin/node/runtime/src/exchange.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* 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 <tomusdrw@users.noreply.github.com >
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
a7e7c895f6
Bump substrate version ( #120 )
...
* bump substrate
* cargo fmt --all
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
3ebaf0548d
downgrade async-std to 1.5.0 ( #119 )
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
7fb99cd575
Bump serde from 1.0.110 to 1.0.111 ( #114 )
2024-04-10 10:28:37 +02:00
dependabot-preview[bot]
e48d943b31
Bump async-std from 1.5.0 to 1.6.0 ( #107 )
2024-04-10 10:28:37 +02:00