* Support overweight messages in XCMP queue
* Add storage migration logic to XCMP queue pallet
* Check whether required weight is larger than max individual weight first
* cargo fmt
* Add some unit tests
* Remove review question comment
* Adds support for returning a custom header from `validate_block`
This adds support for returning a custom header from `validate_block`. Before this, we always
returned the header of the block that was validated (and still do it by default). However, after
this pr it is possible to set a custom header or better custom head data that will be returned
instead from `validate_block`. This can be for example when a chain wants to fork.
* FMT
* Rename InboundXcmpStatus and its related types
* Rename OutboundXcmpStatus and its relevant types
* Add documentation to the newly created types
* Ensure storage prefixes are kept the same
* Add code comments
* Revert storage name changes
* typo fix
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
* Moving `pallet-asset-tx-payment` to substrate
* Pointing `substrate` to my branch to fix the CI
* Fixing cargo.lock
Memmlock2 was in double
* Duplicate Prost-build
* cargo update
* Fixing cargo.lock post merge
* Changes to `Cargo.toml` after substrate merge
* 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 new pallet name based genesis config names
* use custom substrate and update polkadot
* add initial asset-tx-payment pallet
* update cargo.toml
* add (failing) tests
* dispatch Calls instead of using Pallet functions
* fix fee-refund split
* add test for transaction payment with tip
* update cargo.lock
* update cargo.lock
* remove mint workaround and use Mutable trait
* extract fee charging logic into OnChargeAssetTransaction trait
* use asset-tx-payment in statemint runtime
* make extrinsics public
* make extrinsics public
* use ChargeAssetIdOf type alias
* update deps
* move back to AssetIdOf
* remove extra rpc_http_threads
* use different substrate branch
* Update pallets/asset-tx-payment/src/payment.rs
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com>
* Update pallets/asset-tx-payment/src/payment.rs
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com>
* remove overrides
* override substrate deps (again)
* increment spec_version and transaction_version (because we change transaction signing)
* remove direct dependency on pallet-balances from asset-tx-payment
* remove Assets pallet visibility workaround
* add docs and comments
* remove unused imports
* more docs
* add more debug asserts to document assumptions
* add test for tx payment from account with only assets
* add test for missing asset case
* extend test to cover non-sufficient assets
* add a test for Pays::No (refunded transaction)
* add type alias comments
* add more doc comments
* add asset-tx-payment to statemine and westmint
* improve formatting
* update license headers
* add default implementation of HandleCredit for ()
* update doc comments and format imports
* adjust Cargo.toml
* update cargo.lock
* cargo fmt
* cargo fmt
* cargo fmt
* cargo +nightly fmt
* add type alias for OnChargeTransaction
* cargo +nightly fmt
* convert ChargeAssetTxPayment from tuple struct to regular struct
* add more comments
* formatting
* adjust imports and comment
* cargo +nightly fmt
* reformat comment
* use ChargeTransactionPayment's own get_priority + update Substrate
* update Substrate and Polkadot
* cargo fmt
* cargo fmt
* add OperationalFeeMultiplier to asset tx payment tests
* Apply suggestions from code review
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
* add doc links
* charge a minimum converted asset fee of 1 if the input fee is greater zero
* cargo +nightly fmt
* bump spec and transaction version
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com>
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
* Adds support for checking the timestamp inherent while validating a block
This adds support for checking the timestamp inherent while validating a
block. This will use the relay chain slot number * relay chain slot
duration to calculate a timestamp. This timestamp is used to check the
timestamp in the timestamp inherent.
* Update polkadot-parachains/rococo-runtime/src/lib.rs
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
* Update polkadot-parachains/statemine-runtime/src/lib.rs
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
* Update primitives/timestamp/src/lib.rs
Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>
* Fix warnings
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>