Description
This runtime includes breaking changes on the api of asset-manager, detailed here:
Substrate API (PolkadotJS)⚠️Breaking Change⚠️
Asset manager query changes
Querying the account assets is now returning an Optional value:
- runtime 1201:
api.query.assets.account(assetId, accountId) => PalletAssetsAssetAccount
- runtime 1300:
api.query.assets.account(assetId, accountId) => Option<PalletAssetsAssetAccount>
This code snippet allows to support both:
const accountAssetData = await apiAt.query.assets.account(assetId, accountId);
if (!accountAssetData.isEmpty) {
const accountAsset: PalletAssetsAssetAccount =
unwrap" in accountAssetData ? accountAssetData.unwrap() : (accountAssetData as any);
console.log(`Account balance is ${accountAsset.balance.toBigInt()}`);
}
A new storage item name SupportedFeePaymentAssets
, being a vector Vec<AssetType>
, which holds the assets that we accept for xcm fee payment
A new extrinsic RemoveSupportedAsset(asset, numAssetsWeightHint)
, where asset:AssetType
is the asset to be removed and numAssetsWeightHint
refers to the number of supported assets for fee payment (length of SupportedFeePaymentAssets
) in storage.
⚠️ Additionally, the following extrinsics now ask for a weight hint
-
SetAssetUnitsPerSecond: an additional parameter
numAssetsWeightHint
needs to be passed, being the number of supported assets for fee payment (length ofSupportedFeePaymentAssets
) in storage. -
ChangeExistingAssetType: an additional parameter
numAssetsWeightHint
needs to be passed, being the number of supported assets for fee payment (length ofSupportedFeePaymentAssets
) in storage.
Runtimes
Moonbase
✨ spec_version : 1300
🏋 size : 1189429
#️⃣ sha256 : 0xb335022301b9e6c56ff138633f906ce4899219f933feba2bbec2a4ac6622ea05
#️⃣ blake2-256 : 0x690d1ed6d7237dc125c2e7383f2311b8c63e7e3ad4f401c02ab1d5e9a978f57f
🗳️ proposal (authorizeUpgrade) : 0xe41818e42f268f978e10fe50a6971e4314b0aeeddf3770fc3bad1f5544139fa5
Moonriver
✨ spec_version : 1300
🏋 size : 1181500
#️⃣ sha256 : 0x93828da89060e3d613997bcbe80c1d3c8125939cc848132d3c8f4aa4c62bfebe
#️⃣ blake2-256 : 0xe4f8ad20bdf5fe62ec43732a6ae819e47f9bb15c1b9e650da171b06962f0a376
🗳️ proposal (authorizeUpgrade) : 0x6e9b0600fddd82f740f0a883e52804b65d9e1ef728c3f3f7a42ee7f929757cd8
Moonbeam
✨ spec_version : 1300
🏋 size : 1164678
#️⃣ sha256 : 0xdb1dc47e1775b51d509c281b7dca882f7db67e85f68ec27e6f15b4e31414bacc
#️⃣ blake2-256 : 0xc18b6d14021a066f196d84f508978d34818094a083dca7841f8b5437f6140047
🗳️ proposal (authorizeUpgrade) : 0x02666936739fa8a5f9ed1873ecd3cce32b65d67ce6fdd3099e5ba00d53cb57c7
Build information
WASM runtime built using rustc 1.56.1 (59eed8a2a 2021-11-01)
Changes
- 0.9.16 dependency upgrade (#1273)
- Fix Staking total delegations mismatch (#1291)
- Add
BaseFeePerGas
storage value update to migration code (#1298) - Add field names to pallet Event variants (#1277)
- Uncomment event and pin to new xtokens commit (#1292)
- Add GLMR ERC20 precompile on Moonbeam (#1308)
- Enable native asset cross chain transfer in moonriver (#1236)
- Fix removing request when delegation is kicked from bottom (#1307)
- Supported fee payment assets storage (#1118)
Dependency changes
Moonbeam: runtime-1201...runtime-1300
Substrate: PureStake/substrate@3a5aa8c...570b21a
Polkadot: PureStake/polkadot@ac51d9b...c028a34
Cumulus: PureStake/cumulus@0f82e1f...c92f0ab
Frontier: PureStake/frontier@0b66a77...a74529a