Asset Transaction Payment (#488)
* 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>
Showing
- cumulus/Cargo.lock 27 additions, 0 deletionscumulus/Cargo.lock
- cumulus/Cargo.toml 1 addition, 0 deletionscumulus/Cargo.toml
- cumulus/pallets/asset-tx-payment/Cargo.toml 51 additions, 0 deletionscumulus/pallets/asset-tx-payment/Cargo.toml
- cumulus/pallets/asset-tx-payment/src/lib.rs 295 additions, 0 deletionscumulus/pallets/asset-tx-payment/src/lib.rs
- cumulus/pallets/asset-tx-payment/src/payment.rs 168 additions, 0 deletionscumulus/pallets/asset-tx-payment/src/payment.rs
- cumulus/pallets/asset-tx-payment/src/tests.rs 636 additions, 0 deletionscumulus/pallets/asset-tx-payment/src/tests.rs
- cumulus/polkadot-parachains/parachains-common/Cargo.toml 6 additions, 0 deletionscumulus/polkadot-parachains/parachains-common/Cargo.toml
- cumulus/polkadot-parachains/parachains-common/src/impls.rs 34 additions, 9 deletionscumulus/polkadot-parachains/parachains-common/src/impls.rs
- cumulus/polkadot-parachains/statemine/Cargo.toml 2 additions, 0 deletionscumulus/polkadot-parachains/statemine/Cargo.toml
- cumulus/polkadot-parachains/statemine/src/lib.rs 14 additions, 5 deletionscumulus/polkadot-parachains/statemine/src/lib.rs
- cumulus/polkadot-parachains/statemint/Cargo.toml 2 additions, 0 deletionscumulus/polkadot-parachains/statemint/Cargo.toml
- cumulus/polkadot-parachains/statemint/src/lib.rs 14 additions, 5 deletionscumulus/polkadot-parachains/statemint/src/lib.rs
- cumulus/polkadot-parachains/westmint/Cargo.toml 2 additions, 0 deletionscumulus/polkadot-parachains/westmint/Cargo.toml
- cumulus/polkadot-parachains/westmint/src/lib.rs 16 additions, 5 deletionscumulus/polkadot-parachains/westmint/src/lib.rs
Please register or sign in to comment