Branislav Kontur
260dad5110
Bko cosmetics ( #1550 )
...
* Bump log version to 0.4.17
* Removed unnecesseray dependency + rename BridgeGrandpaMillauCall to BridgeGrandpaCall
2024-04-10 10:28:37 +02:00
Serban Iorga
e0b42dfae7
Follow-up on #1518 ( #1546 )
...
* Adjustments for the xcm messages sending logic
Signed-off-by: Serban Iorga <serban@parity.io >
* Deduplicate XCM destination
Signed-off-by: Serban Iorga <serban@parity.io >
* [send_message] small changes
Signed-off-by: Serban Iorga <serban@parity.io >
* Define CustomNetworkId
Right now we use some associations between Rialto, RialtoParachain and
Millau chains and chains defined in the NetworkId enum. But if we are
not carreful we might do mistakes like:
In Millau:
pub const ThisNetwork: NetworkId = Kusama;
pub const RialtoNetwork: NetworkId = Polkadot;
In Rialto:
pub const ThisNetwork: NetworkId = Kusama;
pub const MillauNetwork: NetworkId = Polkadot;
We're introducing CustomNetworkId to have a centralized mapping between
NetworkId chains and our custom chains.
Signed-off-by: Serban Iorga <serban@parity.io >
* Revert "Deduplicate XCM destination"
This reverts commit 3a0a950e1d7484e3ecac45f5c00b152f0485cd11.
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Serban Iorga
7969459d07
Change Runtime APIs best_finalized() signature
...
Change Runtime APIs best_finalized() signature to return Option<HeaderId>
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
c131a5e3c8
Send messages using xcm pallet ( #1518 )
...
* send messages using xcm pallet
* XcmBridge && XcmBridgeAdapter + (untested) config in RialtoParachain
* impl encode_send_xcm for the rest
* remove duplicate code
* some fixes
* cleanup
* some more tests
* cleanup
* cleanup
* send Rialto -> Millau messages using bridge-messages pallet
* fmt
* some clippy fixes
* more clippy
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
7590abd1a3
Introduce bridge relayers pallet ( #1513 )
...
* introduce relayers pallet
* add MessageDeliveryAndDispatchPaymentAdapter
* plug in pallet into test runtimes
* tests prototype
* tests for the relayers pallet
* tests for payment adapter
* mint_reward_payment_procedure_actually_mints_tokens
* benchmarks
* remove irrelevant todo
* remove redundant clone
2024-04-10 10:28:37 +02:00
Serban Iorga
1e0c2a6e02
Follow-up on #1487 ( #1511 )
...
* Remove unused trait implementations
Signed-off-by: Serban Iorga <serban@parity.io >
* Define encoded_size_hint_u32()
Signed-off-by: Serban Iorga <serban@parity.io >
* Define TransactionEstimationParams trait
Signed-off-by: Serban Iorga <serban@parity.io >
* Rework TransactionEstimation
Signed-off-by: Serban Iorga <serban@parity.io >
* Docs + Renamings
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Dan Shields
e9d7adf8fd
rm substrate.dev homepage ( #1506 )
...
new docs page
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
ceefd1b05d
remove account derivation functions ( #1498 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
7d97e576d0
Remove without_storage_info for messages pallet ( #1487 )
...
* draft: remove without_storage_info for messages pallet
* some cleanup
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
31a2be845c
Fix on-different-forks metrics during initialization ( #1468 )
...
* fix on-different-forks metrics during initialization
* "initialize" parachain finality pallet in on-demand parachains relay
* decrease converstion rate requests count
* more error logging
* fix compilation
* clippy
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
f0d05de080
Get dispatch weight from the target chain (when DispatchFeePayment::AtTargetChain is used) ( #1430 )
...
* reintroduce From<SourceChain>InboundLaneApi
* impl From<Chain>InboundLaneApi for testnet runtimes
* use inboundlaneapi in relay
* remove unused OutboundXcmWeigher
* spelling
* added the only test to messages pallet
* fmt
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
7a92b40eab
Fix clippy warnings + try to enable proper (no-warning) clippy on CI ( #1410 )
...
* fix clippy warnings
* try to reenable proper clippy on CI
* fix clippy error
* more Eqs
* ignore clippy::derive-partial-eq-without-eq - clippy seems to be broken now :/
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
5f2f61ced5
messages bridge between RialtoParachain and Millau ( #1218 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
748c265c47
Xcm in Rialto<>Millau bridge ( #1379 )
...
* add XCM pallet to Millau runtime
* some progress
* messages are delivered (no fee)
* temp
* flush
* flush
* some progress
* progress
* Trap(42) is dispatched successfully
* fix spelling
* no more manual sending
* parametrize weight credit for tests
* actually charge fees
* enable send-using-messages-pallet to keep our test deployments alive + send valid XCM sometimes
* fix benchmarks build
* fix tests
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
d582061dff
Remove support for encoded-call messaging from relay and runtime integration code ( #1376 )
...
* remove support for encoded-call messaging
* continue cleanup
* continue cleanup
* continue cleanup
* more cleanpup
* more cleanup
* fmt
* continue cleanup
* spellcheck
* rename
* fix benchmarks
* mention encoded-calls-messaging tag
* fixing deployments
* fix messages generation
* fmt
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
c538a39816
Switch to gav-xcm-v3 branch to be able to test bridges + XCMv3 integration ( #1378 )
...
* switch to gav-xcm-v3 branch (wip)
* add comment
* play with CI
* keep playing with CI
* play with CI
* trigger CI
* Revert "trigger CI"
This reverts commit fc35ac648fe6a3ea8e710a2e07dfee7d8762c6c4.
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
65c2c0ccce
Update Substrate/Polkadot/Cumulus references ( #1353 )
...
* cumulus: 4e95228291
polkadot: 975e780ae0d988dc033f400ba822d14b326ee5b9
substrate: 89fcb3e4f62d221d4e161a437768e77d6265889e
* fix refs
* sync changes from https://github.com/paritytech/polkadot/pull/3828
* sync changes from https://github.com/paritytech/polkadot/pull/4387
* sync changes from https://github.com/paritytech/polkadot/pull/3940
* sync with changes from https://github.com/paritytech/polkadot/pull/4493
* sync with changes from https://github.com/paritytech/polkadot/pull/4958
* sync with changes from https://github.com/paritytech/polkadot/pull/3889
* sync with changes from https://github.com/paritytech/polkadot/pull/5033
* sync with changes from https://github.com/paritytech/polkadot/pull/5065
* compilation fixes
* fixed prometheus endpoint startup (it now requires to be spawned within tokio context)
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
ed2a3082ef
Support dedicated lanes for pallets ( #962 )
...
* pass call origin to the message verifier
* is_outbound_lane_enabled -> is_message_accepted
* trait SenderOrigin
* only accept messages from token swap pallet to token swap lane
* tests for edge cases of pay_delivery_and_dispatch_fee
* fixed origin verification
* fmt
* fix benchmarks compilation
* fix TODO with None account and non-zero message fee (already covered by tests)
* revert cargo fmt changes temporarily
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
7b7b8baa60
added no_stack_overflow_when_decoding_nested_call_during_dispatch test ( #1349 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
f95456d4ea
replace From<>InboundLaneApi with direct storage reads ( #1348 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
2bf5b23262
edition = "2021" ( #1346 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
0ef401ae53
Revert "Revert "override conversion rate in estimate-message-fee RPC ( #1189 )" ( #1275 )" ( #1333 )
...
This reverts commit ffd25db46c5855bcef6710b53d5ca3325ce54e56.
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
097a28418b
Add some tests to check integrity of chain constants + bridge configuration ( #1316 )
...
* add some tests to check integrity of chain constants + bridge configuration
* try to use named parameters where possible
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
ea2d6f898d
Bump Substrate/Polkadot/Cumulus refs ( #1295 )
...
Substrate: 31d90c202d6df9ce3837ee55587b604619a912ba
Polkadot: 60df3c55c711c2872872d6220f98b2611340e051
Cumulus: a9630551c2
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
1d99ad3619
replace latest_confirmed_nonce runtime APIs with direct storage reads ( #1282 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
00f68e7722
Move benchmarks from Rialto to Millau ( #1277 )
...
* move brnchmarks from Rialto to Millau
* fix limits test
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
eb5a3eecd2
Revert "override conversion rate in estimate-message-fee RPC ( #1189 )" ( #1275 )
...
This reverts commit ad4299f6c91ce4c50cb6fbc739a0c788e2920956.
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
a88207876c
Replace InboundLaneApi::latest_received_nonce with direct storage read ( #1269 )
...
* remove inbound_latest_received_nonce
* Update relays/lib-substrate-relay/src/messages_target.rs
Co-authored-by: Adrian Catangiu <adrian@parity.io >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
988f6b1664
remove OutboundLaneApi::latest_received_nonce ( #1262 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
c21217a282
read latest_generated_nonce directly from storage ( #1260 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
741484214e
override conversion rate in estimate-message-fee RPC ( #1189 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
22b1e456ab
move storage keys computation to primitivs ( #1254 )
2024-04-10 10:28:37 +02:00
Adrian Catangiu
8edc9038d1
runtimes: fix call_size() test ( #1245 )
...
Signed-off-by: acatangiu <adrian@parity.io >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
4cdd959057
Refactor message relay helpers ( #1234 )
...
* refactor message relay helpers
* single standalone_metrics function
* fixed tests
* clippy + fmt
* removed commented code
* add calls tracing
* fix spelling
* cargo fmt
* -commented code
* fix build again
* post-merge build fix
* clippy + fmt
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
e675b13042
Refactor finality relay helpers ( #1220 )
...
* refactor finality relay helper definitions
* add missing doc
* removed commented code
* fmt
* disable rustfmt for macro
* move best_finalized method const to relay chain def
2024-04-10 10:28:37 +02:00
Adrian Catangiu
1fb70c7ed7
Integrate BEEFY with Rialto & Millau runtimes ( #1227 )
...
* Add Beefy pallet to Rialto runtime
* Add Beefy gadget to Rialto node
* Add MMR pallet to Rialto runtime
* Add Beefy pallet to Millau runtime
* Add Beefy gadget to Millau node
* Add MMR pallet to Millau runtime
* Add pallet_beefy_mmr to Millau runtime
* Add pallet_beefy_mmr to Rialto runtime
* Implement MMR and BEEFY APIs in Rialto
* fix unit tests
- should_encode_bridge_send_message_call() tests for new
runtime encoding resulted from newly added pallets.
- runtime size_of::<Call>() slightly increased from newly
added pallets.
* fix grumbles
* tighten clippy allowances
* fix more grumbles
* Add MMR RPC to Rialto and Millau nodes
Also implement MmrApi in Millau runtime.
* rialto: use upstream polkadot_client::RuntimeApiCollection
2024-04-10 10:28:37 +02:00
Antonio Dropulic
7b30098a12
update dependencies ( #1229 )
2024-04-10 10:28:37 +02:00
Adrian Catangiu
57f3f36cb1
Remove unused PoA<>Substrate bridge ( #1210 )
...
* Decouple the PoA bridge code from Rialto
* Remove Rialto PoA bridge code
* Remove relays/bin-ethereum code
* Remove relays/client-ethereum code
* Remove modules/ethereum code
* Remove modules/ethereum-contract-builtin code
* Remove PoA bridge documentation
* Remove primitives/ethereum-poa code
* Decouple Rialto from currency-exchange
* Fix building with runtime-benchmarks
* Fix should_encode_bridge_send_message_call test
Because we removed some runtime modules/pallets, the
substrate2substrate bridge pallet has a different index within
the runtime so its calls have a different encoding.
Update the test to use the new encoding.
* Update readme - no more PoA bridge
* Remove deployments/bridges/poa-rialto
Also removes:
- deployments/networks/eth-poa.yml
- deployments/networks/OpenEthereum.Dockerfile
* Remove deployments/dev/poa-config
* Update deployments readme - no more PoA bridge
* Remove eth-related scripts
Deletes:
- deployments/networks/eth-poa.yml
- scripts/run-openethereum-node.sh
* Remove poa-relay from gitlab-ci
* Dockerfiles to use substrate-relay as default
* Remove modules/currency-exchange code
* Remove primitives/currency-exchange code
Signed-off-by: acatangiu <adrian@parity.io >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
e23266c7e6
Bump dependencies ( #1180 )
...
* substrate: d0f6c1c60da22e04dd25c2eca46ebfe6f1571af0
polkadot: dd4b2e6a34a08a01b876d14641e99e7011be3463
cumulus: 9379cd6c18
* fmt
* fixed lost refs
* spelling
* benckhmarks
* fmt
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
7b4f1c2236
Limit max call size of Rialto/Millau runtimes ( #1187 )
...
* max call size <= 230 bytes
* fix benchmarks
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
b60df0849c
replace collective flip with babe randomness in Rialto ( #1188 )
...
* replace collective flip with babe randomness in Rialto
* fmt
* fix test
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
f4a82d4e81
fix/ignore cargo deny issues ( #1183 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
c0df990b90
copypasted -> copied ( #1168 )
2024-04-10 10:28:37 +02:00
bear
f2092515a0
Move calculation relayer reward into MessageDeliveryAndDispatchPayment ( #1153 )
...
* Refactor logic
* Thanks svyatonik help, it compile
* Fix failed unit test
* Remove compile warning
* Rename
* Return result in pay_relayers_rewards
* Fix runtime compile issue
* Use MessageNonce
* Fix review issue
* Missing u64 replacement
* Revert return type changes
* Fix merge issue
* Remove useless clone
2024-04-10 10:28:37 +02:00
hacpy
bd70de8b8b
Match substrate's fmt ( #1148 )
...
* Alter gitlab.
* Use substrate's rustfmt.toml
* cargo +nightly fmt --all
* Fix spellcheck.
* cargo +nightly fmt --all
* format.
* Fix spellcheck and fmt
* fmt?
* Fix spellcheck
Co-authored-by: Tomasz Drwięga <tomasz@parity.io >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
70f87e826c
Add rialto-parachain runtime and node ( #1142 )
...
* Substrate: 63b32fbaa2764c0a8ee76b70cdfa0fcb59b7181f
Polkadot: 7229ab87acf5bc5d4d10655ad1a9819a1e317442
Cumulus: d5284b0e78
* rialto parachain runtime
* fixed tests
* add node + bump refs (not compiling yet):
Substrate: 630422d6108cbaaca893ab213dde69f3bdaa1f6b
Polkadot: 7229ab87acf5bc5d4d10655ad1a9819a1e317442
Cumulus: 5af2990cfd
GrandpaBridgeGadget: c152c45ac331eb8ab40d956ab1d008d181810ef4
* fix compilation (collator is not working)
* more fixes
* fmt
* spellcheck
* fix warnings
* fix compilation
* fmt
* trigger CI
* trigger CI
* Revert "trigger CI"
This reverts commit a31f53cec47909817b31a48f3c9f1abd9321f72c.
* benchmarks
* fix benchmarks
* fix again
* Revert "Revert "trigger CI""
This reverts commit 1dea8b42ac8bca830dea982fd2613eb89d607a6c.
* Revert "Revert "Revert "trigger CI"""
This reverts commit 8fb74fa5eba483b7f6a3ce3e25a60757aef4c6bc.
* try fix
* lost lock file
* spellcheck
* try to disable sccache for cargo check
* Revert "Revert "Revert "Revert "trigger CI""""
This reverts commit f157461482d4c1d19156715c4b1ee2acb169531b.
* try to disable again
* disable sccache for test
2024-04-10 10:28:37 +02:00
Tomasz Drwięga
eaf519dc1b
Rename MessageId -> BridgeMessageId ( #1152 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
084da4343d
Box large arguments of GRANDPA pallet ( #1154 )
...
* box large arguments
* benchmarks
* fix
2024-04-10 10:28:37 +02:00
bear
417903f9e7
Add OnMessageAccepted callback ( #1134 )
...
* Add `OnMessageAccepted` config type
* Update actual weight
* Add unit test
* Update weight
* Remove old comment & update wrong test data
* Make ci happy
* Add lane_id param
* update test case
* Make log info more readable
* Use saturating_sub
* Update docs
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
79143f6ec6
Add parachain pallets to rialto runtime ( #1053 )
...
* use BABE to author blocks on Rialto (previously: Aura)
* removed extra script
* use bp_rialto::Moment
* fix tests
* Babe should control session end
* add parachain pallets to Rialto runtime
* add parachain pallets to rialto runtime + add parachains inherent data provider to node
* remove script again
* fmt
* allow unlicensed crates
* spellcheck
* fix compilation
2024-04-10 10:28:37 +02:00