* BlockId removal: &Hash to Hash
It changes &Block::Hash argument to Block::Hash.
This PR is part of BlockId::Number refactoring analysis (paritytech/substrate#11292)
* update lockfile for {"polkadot", "substrate"}
Co-authored-by: parity-processbot <>
* point to my branch
* girazoki-add-TakeFirstAssetTrader-to-utility
* Commit lock
* point at custom branch
* add new trader to statemine runtimes
* compiles
* Back to master
* Update last tomls
* Imports up
* remove non-needing imports
* FMT
* log messages properly
* Use TakeRevenue instead of HandleCredit
* Introduce xcm fee handler
* check total supply in tests
* FMT
* fix test
* Start decoupling balance calculation into different traits
* Make traits a bit more generic
* PR suggestions
* add import
* import well
* Place xcmfeesassethandler into parachains common
* fix tests
* config parameters
* Min amount to fee receiver
* Make minimum amount for block author to be at least the ED
* Doc in AssetFeeAsExistentialDepositMultiplier
* saturating sub
* make sure we dont enter twice
* FMT
* fmt again
* adapt tests
* Add doc and struct for weight refund
* Doc
* More doc
* PR suggestions
* store all info related to asset payment as multiasset
* return AssetNotFound instead of TooExpensive
* Use asset transactor to deposit fee
* uninstall from statemint
* R for RUntime and CON for BalanceConverter
* Rework logic to avoid unnecesary match and error
* Rework ED check, also in case of refund
* rework typo
* In case refund makes drop below ED, just refund the difference
* fix test westmint
* clone id
* move test imports to preamble
* move test imports to preamble
* test-utils with builderS
* lock file updated
* remove unused imports
Co-authored-by: Stephen Shelton <steve@brewcraft.org>
Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com>
Co-authored-by: joepetrowski <joe@parity.io>
* Handle relocation of `ParachainHost` in Polkadot
`ParachainHost` is no longer versioned and is in `runtime_api` module.
This is a companion for
https://github.com/paritytech/polkadot/pull/5048
* Update dependencies
* add new babe keys to relay storage proof
* persist relay state proof and make pub super to expose to runtime
* use sp trie StorageProof instead of sp state machine Storage Proof
* fmt
* Initial network interface preparations
* Implement get_storage_by_key
* Implement `validators` and `session_index_for_child`
* Implement persisted_validation_data and candidate_pending_availability
* Fix method name for persisted_validation_data and add encoded params
* Implement `retrieve_dmq_contents` and `retrieve_all_inbound_hrmp_channel_contents`
* Implement `prove_read`
* Introduce separate RPC client, expose JsonRpSee errors
* Simplify closure in call_remote_runtime_function
* Implement import stream, upgrade JsonRpSee
* Implement finality stream
* Remove unused method from interface
* Implement `is_major_syncing`
* Implement `wait_on_block`
* Fix tests
* Unify error handling `ApiError`
* Replace WaitError with RelayChainError
* Wrap BlockChainError in RelayChainError
* Unify error handling in relay chain intefaces
* Fix return type of proof method
* Improve error handling of new methods
* Improve error handling and move logging outside of interface
* Clean up
* Remove unwanted changes, clean up
* Remove unused import
* Add format for StatemachineError and remove nused From trait
* Use 'thiserror' crate to simplify error handling
* Expose error for overseer, further simplify error handling
* Reintroduce network interface
* Implement cli option
* Adjust call_state method to use hashes
* Disable PoV recovery when RPC is used
* Add integration test for network full node
* Use Hash instead of BlockId to ensure compatibility with RPC interface
* Fix cargo check warnings
* Implement retries
* Remove `expect` statements from code
* Update jsonrpsee to 0.8.0 and make collator keys optional
* Make cli arguments conflicting
* Remove unused `block_status` method
* Add clippy fixes
* Cargo fmt
* Validate relay chain rpc url
* Clean up dependencies and add one more integration test
* Clean up
* Clean up dependencies of relay-chain-network
* Use hash instead of blockid for rpc methods
* Fix tests
* Update client/cli/src/lib.rs
Co-authored-by: Koute <koute@users.noreply.github.com>
* Improve error message of cli validation
* Add rpc client constructor
* Do not use debug formatting for errors
* Improve logging for remote runtime methods
* Only retry on transport problems
* Use PHash by value, rename test
* Improve tracing, return error on relay-chain-interface build
* Fix naming, use generics instead of deserializing manually
* Rename RelayChainLocal and RelayChainNetwork
* lock
* Format
* Use impl trait for encodable runtime payload
* Only instantiate full node in tests when we need it
* Upgrade scale-codec to 3.0.0
* Improve expect log
Co-authored-by: Koute <koute@users.noreply.github.com>
* Add the ability to suspend or resume XCM execution on the XCMP queue
* Rename QueueActive to QueueSuspended
* Add the ability to suspend the DMP queue
* Rename XCMP to DMP in comments where appropriate
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
* Add a bypass for XCMP queue suspension
* Revert "Add the ability to suspend the DMP queue"
This reverts commit 363ca09b41e40fce3f2740e7ab78f5c54781ca5c.
* Change controller origin to either root or council-issued origin
* Rename to ControllerOriginConverter
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
* sketch downward messages
* bring in attempt to mock mqc-head from moonbeam
* just patch individual crates
* fing comma
* add some logs
* Holy shit, we actually imported a block!
* Actually mock the message queue chain
* use relay parent number for `sent_at`
* finish moving MQC to primitives
* more complete mock and better config type
* change name
* fix export
* better map types
* fix dependencies after rebase
* try-rejigging branches because this is an override
* try to re-jig for hrmp mcqs
* fix branches
* actually fix branches better
* even better
* Removestray log lines
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
* Nicer handling of default `ParachainSystem` name
* better docs
* Default MockXcm for people who only who don't care to mock xcm.
* cargo fmt
* trailing commas
* Apply suggestions from code review
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
* use the variable for hrmp to
* fix deref
* deduplicate MessageQueueChain
* better docs for MessageQueueChain
* Use `Vec<u8>` instead of `&'static [u8]`
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
* cargo fmt
* associated changes for using Vec<u8>
* Unused import
* Fix compilation
Co-authored-by: Joshy Orndorff <admin@joshyorndorff.com>
Co-authored-by: Joshy Orndorff <JoshOrndorff@users.noreply.github.com>
* tweaks from template downstream review #80
* more tweaks
* Update parachain-template/node/src/command.rs
* tweaks to template and other chainspecs
* fmt
* update more tweaks from downstream
* fix build
* Look at the upgrade go-ahead and restriction signals
* Update Cargo.toml
* Drop old docs for validation code
* Update tests
* Fix typo
* Add doc-comments for read_optional_entry
* Add a note about ValidationData
* Introduce migration for removing unused storage entry
* Fix indentation
* Use intra-doc link syntax
* Double-check that GoAhead signal is not spurious
* fmt
* Drop commented code
* Fix typos
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
* Add a weight for StorageVersion write
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
Co-authored-by: Chris Sosnin <chris125_@live.com>
Co-authored-by: Chris Sosnin <48099298+slumber@users.noreply.github.com>
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
* Use DecodeLimit for decoding XCM messages
* Use decode_all_with_depth_limit in appropriate places
* Use decode_all while decoding byte vector
* cargo fmt