changelog
Highlights
Asset ID
Polymesh no longer requires each tokenised asset to have a unique ticker. Instead each asset is assigned a unique AssetID
when it is created, which can optionally be linked to a unique Ticker
. This change impacts large amounts of storage and API which now expects AssetID
to uniquely identify a tokenised asset, rather than the previous Ticker
.
Staking
Polymesh has been updated to a more recent upstream version of the Staking
pallet. This brings efficiency improvements, and some modifications to the election process. Tokenomics / inflation is not effected.
Keys
The storage of secondary keys, and their associated permissions has been optimised to improve the efficiency of these look-ups which are needed for all extrinsics.
MultiSig
The MultiSig implementation has been updated to simplify the association between MultiSigs and their Identities. The updated implementation provides flexibility to specify which key is responsible for paying for MultiSig signer transactions, and consolidate the behaviour of MultiSig keys with other keys.
Venue ID
Settlements in Polymesh have been updated to not require a Venue ID. This simplifies the settlement process for peer to peer transactions (those not going through an exchange or other matching venue).
New External API
Asset ID
- pallet_asset
- The following storage have been added: UniqueTickerRegistration, SecurityTokens, AssetIdentifiers, AssetsExemptFromAffirmation, PreApprovedAsset, TickersOwnedByUser, SecurityTokensOwnedByuser, AssetIDTicker, TickerAssetID, RngNonce;
- The following extrinsics have been added: register_unique_ticker, exempt_asset_affirmation, remove_asset_affirmation_exemption, pre_approve_asset, remove_asset_pre_approval, link_ticker_to_asset_id.
(#1694)
- Adds
unlink_ticker_from_asset_id
extrinsic. (#1728)
Staking
- Adds the following storage:
MinNominatorBond
,MinValidatorBond
,MinimumActiveStake
,MinCommission
,MaxValidatorsCount
,MaxNominatorsCount
,CurrentPlannedSession
,ChillThreshold
. (#1678) - Removes the following storage:
EarliestUnappliedSlash
,SnapshotValidators
,SnapshotNominators
,QueuedElected
,QueuedScore
,EraElectionStatus
,IsCurrentSessionFinal
,MinimumBondThreshold
(#1678) - The following extrinsics have been added:
kick
,set_staking_configs
,chill_other
,force_apply_min_commission
,set_min_commission
. (httpshttps://github.com//pull/1678)
Keys
- Split secondary key permissions out of
Identity.KeyRecords
to allow for more efficient permissions checks. (#1679)
MultiSig
- Execute MultiSig proposal at the same time as the last required approval. No longer uses the scheduler to execute the proposal in the next block. (#1687)
- Convert the MultiSig pallet to frame v2. (#1687)
- A Multisig can be made a secondary key with custom permissions (if called by the primary key). (#1687)
- A Multisig can add/remove multiple singers in a single proposal now with
multisig.add_multisig_signers
andmultisig.remove_multisig_signers
. (#1687) - Prune proposals when they are executed or rejected. (#1687)
- Limit the total number of signers per MultiSig to 50. (#1687)
- Split MultiSig
CreatorDid
intoAdminDid
andPayingDid
. (#1687) - A MultiSig can add an admin DID to enable the
*_via_admin
controls. (#1687) - A MultiSig can remove it's admin to disable the
*_via_admin
controls. The admin DID can also remove itself as the admin of a MultiSig. (#1687) - A MultiSig can remove it's paying DID to pay for its own transaction/protocol fees. (#1687)
- A MultiSig unlinked from an identity (via
identity.leave_identity_as_key
) and join a new identity usingmultisig.approve_join_identity
and the transaction fees will be paid by the primary key of the joining identity. (#1687) - A MultiSig can't be a signer on another MultiSig. (#1687)
- Adds
remove_admin
extrinsic; (#1726) multisig.add_admin(identity)
callable by the MultiSig to add an identity as admin. (#1687)multisig.remove_admin_via_admin(multisig)
callable by the admin to remove itself as admin of a MultiSig. (#1687)multisig.remove_payer()
callable by the MultiSig to remove the paying identity. The MultiSig will need to pay for its own transaction/protocol fees. (#1687)multisig.remove_payer_via_payer(multisig)
callable by the paying identity to remove itself as the payer of fees for the MultiSig. (#1687)multisig.approve_join_identity(auth_id)
callable by MultiSig signers to approve joining a new identity. The primary key of the joining identity will pay for transaction fees. (#1687)multisig.join_identity(auth_id)
this is called by the proposal created inapprove_join_identity
to accept a join identity authorization. (#1687)- Added storage
AuthToProposalId
used bymultisig.approve_join_identity
to map anauth_id
toproposal_id
. (#1687) - Adds
remove_admin
extrinsic. (httpshttps://github.com//pull/1726)
Other
- Remove most of the Bridge code (extrinsics, events, errors). Only keeping the storage. (#1687)
- Use manual pallet index values, to avoid breaking pallet ids when adding/removing pallets. Also this makes sure that all runtimes use the same pallet indices. (#1687)
Modified External API
Asset ID
- pallet_asset
- The following storage have been remove: Tickers, Tokens, Identifiers, TickersExemptFromAffirmation; PreApprovedTicker;
- The following storage have changed types: AssetNames, BalanceOf, FundingRound, IssuedInFundingRound, Frozen, AssetDocuments, AssetDocumentsIdSequence, AssetMetadataValues, AssetMetadataValueDetails, AssetMetadataLocalNameToKey, AssetMetadataLocalKeyToName, AssetMetadataLocalSpecs, AssetMetadataNextLocalKey, MandatoryMediators, CurrentAssetMetadataLocalKey;
- The following extrinsics have been removed: register_ticker, redeem_from_portfolio, exempt_ticker_affirmation, remove_ticker_affirmation_exemption, pre_approve_ticker, remove_ticker_pre_approval;
- The following extrinsics have been changed: create_asset, freeze, unfreeze, rename_asset, issue, redeem, make_divisible, add_documents, remove_documents, set_funding_round, update_identifiers, controller_transfer, create_asset_with_custom_type, set_asset_metadata, set_asset_metadata_details, register_and_set_local_asset_metadata, register_asset_metadata_local_type, update_asset_type, remove_local_metadata_key, remove_metadata_value, add_mandatory_mediators, remove_mandatory_mediators.
(#1694)
- pallet_checkpoint
- The following storage have changed types: TotalSupply, Balance, CheckpointIdSequence, BalanceUpdates, Timestamps, ScheduleIdSequence, CachedNextCheckpoints, ScheduledCheckpoints, ScheduleRefCount, SchedulePoints;
- The following extrinsics have been changed: create_checkpoint, create_schedule, remove_schedule; * pallet_compliance_manager
- The following storage have changed types: AssetCompliances, TrustedClaimIssuer;
- The following extrinsics have been changed: add_compliance_requirement, remove_compliance_requirement, replace_asset_compliance, reset_asset_compliance, pause_asset_compliance, resume_asset_compliance, add_default_trusted_claim_issuer, remove_default_trusted_claim_issuer, change_compliance_requirement; * pallet_corporate_actions
- The following storage have changed types: DefaultTargetIdentities, DefaultWithholdingTax, DidWithholdingTax, CAIdSequence, CorporateActions;
- The following extrinsics have been changed: set_default_targets, set_default_withholding_tax, set_did_withholding_tax, initiate_corporate_action, link_ca_doc, remove_ca, change_record_date. (#1694)
- pallet_distribution
- The following extrinsics have been changed: distribute
(#1694)
- The following extrinsics have been changed: distribute
- pallet_external_agents
- The following storage have changed types: AGIdSequence, AgentOf, GroupOfAgent, NumFullAgents, GroupPermissions;
- The following extrinsics have been changed: create_group, set_group_permissions, remove_agent, abdicate, change_group, create_group_and_add_auth, create_and_change_custom_group
(#1694)
- pallet_nft
- The following storage have changed types: NumberOfNFTs, CollectionAsset, MetadataValue, NFTsInCollection, NFTOwner;
- The following extrinsics have been changed: create_nft_collection, issue_nft, redeem_nft, controller_transfer.
(#1694)
- pallet_portfolio
- The following storage have changed types: PortfolioAssetBalances, PortfolioLockedAssets, PortfolioNFT, PortfolioLockedNFT, PreApprovedPortfolios;
- The following extrinsics have been changed: pre_approve_portfolio, remove_portfolio_pre_approval.
(#1694)
- pallet_settlement
- The following storage have changed types: VenueFiltering, VenueAllowList;
- The following extrinsics have been changed: set_venue_filtering, allow_venues, disallow_venues.
(#1694)
- pallet_statistics
- The following storage have changed types: ActiveAssetStats, AssetTransferCompliances;
- The following extrinsics have been changed: set_active_asset_stats, batch_update_asset_stats, set_asset_transfer_compliance.
(#1694)
- pallet_sto
- The following storage have changed types: Fundraisers, FundraiserCount, FundraiserNames;
- The following extrinsics have been changed: freeze_fundraiser, unfreeze_fundraiser, modify_fundraiser_window, stop.
(#1694)
Staking
StakingLedger::unlocking
andStakingLedger::claimed_rewards
types changed fromVec
toBoundedVec
. (#1678)- The following extrinsics were removed:
set_min_bond_threshold
,set_history_depth
,submit_election_solution
,submit_election_solution_unsigned
. (#1678) - The following events have been removed:
StakingElection
,SolutionStored
,MinimumBondThresholdUpdated
. (#1678) - Adds the following error variants:
DuplicateIndex
,InsufficientBond
,InvalidNumberOfNominations
,IncorrectHistoryDepth
,CannotChillOther
,TooManyValidators
,CommissionTooLow
,IdentityIsAlreadyPermissioned
,IdentityIsMissingCDD
,IdentityNotFound
,ValidatorNotFound
. (#1678) - Removes the following error variants:
InsufficientValue
,OffchainElectionEarlySubmission
,OffchainElectionWeakSubmission
,SnapshotUnavailable
,OffchainElectionBogusWinnerCount
,OffchainElectionBogusWinner
,OffchainElectionBogusCompact
,OffchainElectionBogusNominator
,OffchainElectionBogusNomination
,OffchainElectionSlashedNomination
,OffchainElectionBogusSelfVote
,OffchainElectionBogusEdge
,OffchainElectionBogusScore
,OffchainElectionBogusElectionSize
,CallNotAllowed
,AlreadyExists
,NotExists
,NoChange
,InvalidValidatorIdentity
,InvalidValidatorCommission
,HitIntendedValidatorCount
,BondTooSmall
,InvalidValidatorUnbondAmount
. (#1678) electionProviderMultiPhase.unsignedPhase
constant is now 1/4 of the Epoch duration. (#1707)
Keys
- Changed
Identity.KeyRecords
storage type to only hold the key type (primary, secondary, multisig) and the DID/AccountId. Secondary key permissions have been split out into storageIdentity.KeyExtrinsicPermissions
,Identity.KeyAssetPermissions
, andIdentity.KeyPortfolioPermissions
. (#1679) - Renamed type
DispatchableName
toExtrinsicName
and change it to wrap aString
instead of raw bytesVec<u8>
. (#1679) - Changed
PalletName
to wrap aString
instead of raw bytesVec<u8>
. (#1679) - Changed type
PalletPermissions
to remove thepallet_name
field (pallet name is used as a key the newExtrinsicPermissions
type). (#1679) - The extrinsic permissions in type
Permissions
has been changed to a new typeExtrinsicPermissions
which uses maps instead of sets. (#1679) - Storage value
ExternalAgents.GroupPermissions
has changed since the extrinsic permissions uses maps instead of sets now. (#1679)
MultiSig
- Remove
Multisig.create_or_approve_proposal
(#1687) - Remove storage
Multisig.ProposalIds
since we don't lookup proposal ids from the proposal call. (#1687) - Renamed storage
Multisig.MultiSigTxDone
toMultisig.NextProposalId
. (#1687) - Removed the bridge pallet extrinsics, events and errors. (#1687)
- Removed deprecated
*_as_identity
MultiSig extrinsic calls. (#1687) - Removed the suffix
_as_key
from all MultiSig extrinsics. (#1687) - Changed MultiSig storage
MultiSigSigners
type fromSignatory<AccountId>
to justAccountId
. (#1687) - Replaced all
Signatory<AccountId>
type withAccountId
in the MutliSig pallet's events, storage and extrinsics. (#1687) - Removed field
auto_close
from theProposalDetails
type (andProposalDetail
storage). (#1687) - Refactor the
ProposalDetail
storage into two storage itemsProposalVoteCounts
andProposalStates
.ProposalVoteCounts
only stores the approval/rejection vote counts.ProposalStates
only store the state and expirey. (#1687) - Change the key hasher of the
Proposal
value in double mapMultiSig.ProposalIds
fromBlake2_128Concat
toBlake2_128
. (#1687) multisig.make_multisig_secondary
take an optional set of permissions. Only the creator's primary key can set custom permissions. (#1687)multisig.add_multisig_signer
has been replaced withmultisig.add_multisig_signers
to allow adding multiple signers. (#1687)multisig.remove_multisig_signer
has been replaced withmultisig.remove_multisig_signers
to allow removing multiple signers. (#1687)- Use
BoundedVec<AccountId, T::MaxSigners>
for signers list when creating/adding/removing multisig signers. Multisigs can still have more thanT::MaxSigners
, the limit is just used for a single call. (#1687) - Added an multisig proposal execution reentry guard to prevent nested proposal executions. (#1687)
- Remove Multisig extrinsics
*_via_creator
to*_via_admin
. (#1687) - Multisig storage
CreatorDid
renamed toAdminDid
. (#1687) - Added Multisig storage
PayingDid
to hold the identity that pays transaction fees. (#1687) - When creating a new MultiSig the calling DID is set as the
PayingDid
by default, but doesn't have admin controls. (#1687) create_multisig
now adds the new MultiSig to the caller's identity as a secondary key. By default the multisig will have no permissions unless the caller is the primary key and has provided custom permissions. (#1687)- Removed multisig
make_multisig_primary
,make_multisig_secondary
andremove_creator_controls
extrinsics. (#1687) - Replaced
remove_creator_controls
withremove_admin_via_admin
extrinsic. (#1687) - Remove storage
CurrentDid
from identity pallet. This value was only set during a transaction and cleared when the transaction finished (even on errors). (#1687) - Changed the
max_weight
parameter ofMultSig.approve
extrinsic call to be optional. (#1716)
Venue ID
- The following extrinsics changed the venue_id to
Option<VenueId>
: add_instruction, add_and_affirm_instruction, add_and_affirm_with_mediators, add_instruction_with_mediators. (#1700)
Other
- Adds
number_of_keys
toredeem_nft
extrinsic. (#1725) - Removed state trie migration pallet and RPC endpoints. (#1718)
New Events
Asset ID
- pallet_asset
- The following events have changed: AssetCreated, IdentifiersUpdated, DivisibilityChanged, AssetOwnershipTransferred, AssetFrozen, AssetUnfrozen, AssetRenamed, FundingRoundSet, DocumentAdded, DocumentRemoved, ControllerTransfer, SetAssetMetadataValue, SetAssetMetadataValueDetails, RegisterAssetMetadataLocalType, AssetTypeChanged, LocalMetadataKeyDeleted, MetadataValueDeleted, AssetBalanceUpdated,AssetAffirmationExemption, RemoveAssetAffirmationExemption, PreApprovedAsset, RemovePreApprovedAsset, AssetMediatorsAdded, AssetMediatorsRemoved; * pallet_checkpoint
- The following events have changed: CheckpointCreated, ScheduleCreated, ScheduleRemoved; * pallet_compliance_manager
- The following events have changed: ComplianceRequirementCreated, ComplianceRequirementRemoved, AssetComplianceReplaced, AssetComplianceReset, AssetComplianceResumed, AssetCompliancePaused, ComplianceRequirementChanged, TrustedDefaultClaimIssuerAdded, TrustedDefaultClaimIssuerRemoved.
(#1694)
- pallet_corporate_actions
- The following events have changed: DefaultTargetIdentitiesChanged, DefaultWithholdingTaxChanged, DidWithholdingTaxChanged.
(#1694)
- The following events have changed: DefaultTargetIdentitiesChanged, DefaultWithholdingTaxChanged, DidWithholdingTaxChanged.
- pallet_external_agents
- The following events have changed: GroupCreated, GroupPermissionsUpdated, AgentAdded, AgentRemoved, GroupChanged.
(#1694)
- The following events have changed: GroupCreated, GroupPermissionsUpdated, AgentAdded, AgentRemoved, GroupChanged.
- pallet_nft
- The following events have changed: NftCollectionCreated; * pallet_portfolio
- The following events have changed: PreApprovedPortfolio, RevokePreApprovedPortfolio; * pallet_settlement
- The following events have changed: VenueFiltering, VenuesAllowed, VenuesBlocked, VenueUnauthorized; * pallet_statistics
- The following events have changed: StatTypesAdded, StatTypesRemoved, AssetStatsUpdated, SetAssetTransferCompliance.
(#1694)
- pallet_sto
- The following events have changed: Invested
(#1694)
- The following events have changed: Invested
Staking
- The following events have been added:
StakersElected
,StakingElectionFailed
,Kicked
,Chilled
,PayoutStarted
,ValidatorPrefsSet
,ForceEra
. (#1678)
MultiSig
- Add
MultiSig.ProposalApprovalVote
event to signal an approval vote instead of eventProposalApproved
. TheProposalApproved
event is now only emitted when the proposal has received enough votes to be executed. (#1687) - New MultiSig events:
MultiSigAddedAdmin
,MultiSigRemovedAdmin
, andMultiSigRemovedPayingDid
. (#1687)
Asset ID
- pallet_asset
- The following errors have been added: TickerIsAlreadyLinkedToAnAsset, TickerRegistrationNotFound, AssetIDGenerationError;
- The following RPC have been removed: can_transfer_granular;
- The following RPC have been added: transfer_report. (#1694)
- pallet_nft
- The following errors have been added: InvalidAssetID;
- The following RPC have been removed: validate_nft_transfer;
- The following RPC have been added: transfer_report. (#1694)
- pallet_compliance
- The following RPC have been changed: compliance_report. (#1694)
- pallet_identity
- The following RPC have been removed: get_asset_did. (#1694)
Modified Events
Keys
- Any event containing a
Permissions
value will have changed (the extrinsic permissions are stored as a map instead of a set). (#1679)
MultiSig
- Renamed MultiSig event
MultiSigSignaturesRequiredChanged
toMultiSigSignersRequiredChanged
. (#1687) - The multisig events now use struct variants instead of tuple variants. (#1687)
MultiSig.ProposalExecuted
event is now emitted for both successful and failed executions. Theresult
field is used to see if the execution failed and get the error. (#1687)MultiSig.ProposalFailedToExecute
has been removed, since the error is available in theProposalExecuted
event. (#1687)- Renamed
MultiSigSignerAuthorized
toMultiSigSignersAuthorized
and change thesigner
field tosigners
as a bounded vec. Now only one event is emitted when adding multiple signers. (#1687) - Renamed
MultiSigSignerRemoved
toMultiSigSignersRemoved
and change thesigner
field tosigners
as a bounded vec. Now only one event is emitted when removing multiple signers. (#1687) - The
caller_did
is now optional for MultiSig events:ProposalAdded
,ProposalExecuted
,MultiSigSignersRequiredChanged
,ProposalApprovalVote
,ProposalRejectionVote
,ProposalApproved
, andProposalRejected
. Since the multisig could be unlinked from an identity when those events are emitted. (#1687) - Changed the caller's DID to be optional in the following committee events:
FinalVotes
,Approved
,Rejected
, andExecuted
. (#1687) - Removed the caller's DID from committee event:
ReleaseCoordinatorUpdated
. (#1687)
Venue ID
- The following events were modified: InstructionCreated. (#1700)
Other
Other
Staking
- Removes
ElectionCompute
,ElectionResult
,ElectionStatus
andElectionSize
. (#1678) - The
StakingLedger::slash()
function has been update to implement a a proportional slashing system. (#1678) - Adds two parameters to the
EraPayout
trait. (#1678) - Adds
ConvertCurve
which implementsEraPayout
this is needed since the associated typeT::Reward
no longer exists. (#1678) - Adds
SlashParams::disable_strategy
. (#1678) - In
compute_slash
the offending validator will be disabled only ifparams.disable_strategy != DisableStrategy::Never
. (#1678) - In
kick_out_if_recent
the offending validator will be disabled only ifparams.disable_strategy == DisableStrategy::Always
. (#1678) - Adds the following associated types:
CurrencyBalance
,ElectionProvider
,GenesisElectionProvider
,HistoryDepth
,AdminOrigin
,EraPayout
,VoterList
,TargetList
,OnStakerSlash
,BenchmarkingConfig
. (#1678) - Removes the follosing associated types:
SlashCancelOrigin
,RewardCurve
,ElectionLookahead
,MaxIterations
,MinSolutionScoreBump
,UnsignedPriority
,OffchainSolutionWeightLimit
,RequiredAddOrigin
,RequiredRemoveOrigin
,RequiredCommissionOrigin
,MinimumBond
. (#1678) - The following fields have been removed from
GenesisConfig
:min_bond_threshold
. (#1678) - The following fields have been added to
GenesisConfig
:min_nominator_bond
,min_validator_bond
,max_validator_count
,max_nominator_count
. (#1678) - In
do_payout_stakers
callT::Reward::on_unbalanced(total_imbalance)
. (#1678) - In
chill_stash
emitChilled
. (#1678) - In
new_session
remove call toForceEra::<T>::kill()
if Forcing::ForceNew. (#1678) - In
new_session
remove call toSelf::close_election_window()
. (#1678) - In
end_era
(#1678) - In
set_force_era
emitForceEra
event. (#1678) - Removes
ValidateUnsigned
impl for the pallet. (#1678) - Modifies the maximum number of nominators that receive rewards, per validator, from 2,048 to 1,024. (#1706)
MultiSig
- Adding/Removing signers invalidates existing proposals. (#1726)
- Changing number of required signatures invalidates existing proposals. (#1726)
- Adding a proposal checks if the expiry date is in the future. (#1726)
Other
- Update weights for all pallets. (#1705)
- The return type of identity RPC endpoints
get_key_identity_data
andget_did_records
has changed, since thePermissions
type now uses a map instead of a set for extrinsic permissions. (#1679) - Remove internal
Context::current_identity*
API. (#1687) - Update Json Schema (#1708)
- Adds
transfer_restrictions_report
runtime api. (#1714) - Adds
InvalidTransferStatisticsFailure
error. (#1714) - Returns the actual weight when redeeming an NFT. (#1725)
- Removed dead code. (#1718)
- Reject instructions with offchain assets without a venue. (#1715)
- Adds
OffChainAssetsMustHaveAVenue
error. (#1715) - Removes duplicate code (function:
ensure_security_token_exists
). (#1728) - Extrinsic
link_ticker_to_asset_id
returns an error if an asset is already linked to a ticker. (#1728)
Data Migration
Asset ID
- pallet_checkpoint
- The following storage have been migrated: TotalSupply, Balance, CheckpointIdSequence, BalanceUpdates, Timestamps, ScheduleIdSequence, CachedNextCheckpoints, ScheduledCheckpoints, ScheduleRefCount, SchedulePoints; (#1699)
- pallet_compliance_manager
- The following storage been migrated: AssetCompliances, TrustedClaimIssuer; (#1699)
- pallet_ballot
- The following storage been migrated: Metas, TimeRanges, MotionNumChoices, RCV, Results, Votes. (#1699)
- pallet_distribution
- The following storage been migrated: Distributions, HolderPaid; (#1699)
- pallet_asset
- The following storage have been migrated: Tickers, Tokens, Identifiers, TickersExemptFromAffirmation, AssetNames, BalanceOf, FundingRound, IssuedInFundingRound, Frozen, AssetDocuments, AssetDocumentsIdSequence, AssetMetadataValues, AssetMetadataValueDetails, AssetMetadataLocalNameToKey, AssetMetadataLocalKeyToName, AssetMetadataLocalSpecs, AssetMetadataNextLocalKey, MandatoryMediators, CurrentAssetMetadataLocalKey. (httpshttps://github.com//pull/1699)
- pallet_corporate_actions
- The following storage have been migrated: DefaultTargetIdentities, DefaultWithholdingTax, DidWithholdingTax, CAIdSequence, CorporateActions. (httpshttps://github.com//pull/1699)
- pallet_external_agents
- The following storage have been migrated: AGIdSequence, AgentOf, GroupOfAgent, NumFullAgents, GroupPermissions; (#1699)
- pallet_nft
- The following storage have been migrated: NumberOfNFTs, CollectionTicker, Collection, NFTsInCollection, NFTOwner. (#1699)
- pallet_portfolio
- The following storage have been migrated: PortfolioAssetBalances, PortfolioLockedAssets, PortfolioNFT, PortfolioLockedNFT, PreApprovedPortfolios; (#1699)
- pallet_settlement
- The following storage have been migrated: VenueFiltering, VenueAllowList, InstructionLegs; (#1699)
- pallet_statistics
- The following storage have been migrated: ActiveAssetStats, AssetTransferCompliances, AssetStats, TransferConditionExemptEntities; (#1699)
- pallet_sto
- The following storage have been migrated: Fundraisers, FundraiserCount, FundraiserNames. (#1699)
- The InstructionDetails storage was migrated. (#1700)
- Improve log messages. (#1730)
- Add call to migrations in the Identity pallet. (#1730)
- Fix Sto migration. (#1730)
Staking
Validators
storage changed fromStorageMap
toCountedStorageMap
. (#1678)Nominators
storage changed fromStorageMap
toCountedStorageMap
. (#1678)- The following Storage have been removed: SnapshotValidators, SnapshotNominators, QueuedElected, QueuedScore, EraElectionStatus, IsCurrentSessionFinal, HistoryDepth, MinimumBondThreshold, EarliestUnappliedSlash. (#1678)
- The following storage have changed types: Validators, Nominators. (#1678)
MultiSig
- Migration to remove old
MultiSig.ProposalDetail
storage. (#1687) - Migrate MultiSig signers storage from
Signatory
type. (#1687) - Migrate renamed storage
MultiSigToIdentity
. (#1687) - Migrate Multisig
MultiSigTxDone
toNextProposalId
. (#1687) - Removed storage
Multisig.LostCreatorPrivileges
. (#1687) - Migrate
Multisig.CreatorDid
toMultisig.PayingDid
andMultisig.AdminDid
(only ifLostCreatorPrivileges
hasn't been set). (#1687)