Polimec 0.7.6
Note
This release includes changes only in the runtime. Therefore, no updates to the nodes are needed or recommended, and no new binary has been distributed.
What's Changed
- ♻️ Change tokenSymbol in chain-spec by @lrazovic in #349
- ♻️ Summer cleanup by @lrazovic in #350
- ✨ Multiple migration paths by @JuaniRios in #341
- 👨🏻💻 Reorg extrinsics by @JuaniRios in #345
- ✨ New CT Migration benchmarks by @JuaniRios in #346
- 🧪 Experiment hrmp weighing by @JuaniRios in #351
- 💻 Run new benchmarks by @JuaniRios in #352
- 📦️ Add stake.plus bootnodes by @senseless in #359
- 📄 Small comment about Y variable by @JuaniRios in #356
New Contributors
- @senseless made their first contribution in #359
Full Changelog: v0.7.5...v0.7.6
- Generated using
srtool
✨ Your Substrate WASM Runtime is ready! ✨
✨ WASM : runtimes/polimec/target/srtool/production/wbuild/polimec-runtime/polimec_runtime.compact.wasm
✨ Z_WASM: runtimes/polimec/target/srtool/production/wbuild/polimec-runtime/polimec_runtime.compact.compressed.wasm
Summary generated with srtool v0.15.0 using the docker image paritytech/srtool:1.77.0:
Package : polimec-runtime v0.7.0
GIT commit : 44810afa2ae01edcc2d7b19e38e8c9ab13660441
GIT tag : v0.7.5
GIT branch : 07-09-storage_migration
Rustc : rustc 1.77.0 (aedd173a2 2024-03-17)
Time : 2024-07-19T14:15:07Z
== Compact
Version : polimec-mainnet-7006 (polimec-mainnet-0.tx4.au1)
Metadata : V14
Size : 5.08 MB (5328682 bytes)
setCode : 0xd1eb35111665ef3341b73752dbb710cab28db4c06f4e64a2d9ab8883711c618f
authorizeUpgrade : 0x71690009573e41c7f72885fed79726be8dbf32e99c659f160ce457f1712418f2
IPFS : Qmaii2rmSC4rm1vkrsfPRPLYrgP5GHsquYJbRD1cW58ksR
BLAKE2_256 : 0xcbfc703f54fbe6b11aade004b09f7d74fdef3aa4b62f7b945af25b7119275ab6
Wasm : runtimes/polimec/target/srtool/production/wbuild/polimec-runtime/polimec_runtime.compact.wasm
== Compressed
Version : polimec-mainnet-7006 (polimec-mainnet-0.tx4.au1)
Metadata : V14
Size : 1.26 MB (1322678 bytes)
Compression : 75.18%
setCode : 0x38f818566330449dd6f8881989f300e61259f6aa73d2e0000eddc916af842144
authorizeUpgrade : 0x72cafaed9a3861cf39b597b4de8af11e885d1e6ecd0765fb6f542db534e2aace
IPFS : QmP512YNtnmrBDm9R5ySerucCngdQVq5HpEc6DyQJqSNZi
BLAKE2_256 : 0x0bddcd086e8818f2f9cad843e8f64e9bc1d7be065e100d5968c55a2c20b08446
Wasm : runtimes/polimec/target/srtool/production/wbuild/polimec-runtime/polimec_runtime.compact.compressed.wasm
- Generated using
subwasm info
🏋️ Runtime size: 1.261 MB (1,322,678 bytes)
🗜 Compressed: Yes, 75.18%
✨ Reserved meta: OK - [6D, 65, 74, 61]
🎁 Metadata version: V14
🔥 Core version: polimec-mainnet-7006 (polimec-mainnet-0.tx4.au1)
🗳️ system.setCode hash: 0x38f818566330449dd6f8881989f300e61259f6aa73d2e0000eddc916af842144
🗳️ authorizeUpgrade hash: 0x72cafaed9a3861cf39b597b4de8af11e885d1e6ecd0765fb6f542db534e2aace
🗳️ Blake2-256 hash: 0x0bddcd086e8818f2f9cad843e8f64e9bc1d7be065e100d5968c55a2c20b08446
📦 IPFS: https://www.ipfs.io/ipfs/QmP512YNtnmrBDm9R5ySerucCngdQVq5HpEc6DyQJqSNZi
- Generated using
subwasm diff
[≠] pallet 0: System -> 1 change(s)
- constants changes:
[≠] Version: [ 60, 112, 111, 108, 105, 109, 101, 99, 45, 109, 97, 105, 110, 110, 101, 116, 60, 112, 111, 108, 105, 109, 101, 99, 45, 109, 97, 105, 110, 110, 101, 116, ... ]
[Value([Changed(36, U8Change(93, 94)), Changed(201, U8Change(3, 4))])]
[≠] pallet 80: Funding -> 47 change(s)
- calls changes:
[≠] 1: edit_project ( jwt: UntrustedToken, project_id: ProjectId, new_project_metadata: ProjectMetadataOf<T>, ) )
[Name(StringChange("edit_project", "remove_project")), Signature(SignatureChange { args: [Removed(2, ArgDesc { name: "new_project_metadata", ty: "ProjectMetadataOf<T>" })] })]
[≠] 2: start_evaluation ( jwt: UntrustedToken, project_id: ProjectId, ) )
[Name(StringChange("start_evaluation", "edit_project")), Signature(SignatureChange { args: [Added(2, ArgDesc { name: "new_project_metadata", ty: "ProjectMetadataOf<T>" })] })]
[≠] 3: start_auction ( jwt: UntrustedToken, project_id: ProjectId, ) )
[Name(StringChange("start_auction", "start_evaluation"))]
[≠] 4: evaluate ( jwt: UntrustedToken, project_id: ProjectId, usd_amount: BalanceOf<T>, ) )
[Name(StringChange("evaluate", "start_auction")), Signature(SignatureChange { args: [Removed(2, ArgDesc { name: "usd_amount", ty: "BalanceOf<T>" })] })]
[≠] 5: bid ( jwt: UntrustedToken, project_id: ProjectId, ct_amount: BalanceOf<T>, multiplier: T::Multiplier, asset: AcceptedFundingAsset, ) )
[Name(StringChange("bid", "evaluate")), Signature(SignatureChange { args: [Changed(2, [Name(StringChange("ct_amount", "usd_amount"))]), Removed(3, ArgDesc { name: "multiplier", ty: "T::Multiplier" }), Removed(4, ArgDesc { name: "asset", ty: "AcceptedFundingAsset" })] })]
[≠] 6: community_contribute ( jwt: UntrustedToken, project_id: ProjectId, amount: BalanceOf<T>, multiplier: MultiplierOf<T>, asset: AcceptedFundingAsset, ) )
[Name(StringChange("community_contribute", "root_do_evaluation_end")), Signature(SignatureChange { args: [Changed(0, [Name(StringChange("jwt", "project_id")), Ty(StringChange("UntrustedToken", "ProjectId"))]), Removed(1, ArgDesc { name: "project_id", ty: "ProjectId" }), Removed(2, ArgDesc { name: "amount", ty: "BalanceOf<T>" }), Removed(3, ArgDesc { name: "multiplier", ty: "MultiplierOf<T>" }), Removed(4, ArgDesc { name: "asset", ty: "AcceptedFundingAsset" })] })]
[≠] 7: remaining_contribute ( jwt: UntrustedToken, project_id: ProjectId, amount: BalanceOf<T>, multiplier: MultiplierOf<T>, asset: AcceptedFundingAsset, ) )
[Name(StringChange("remaining_contribute", "root_do_auction_opening")), Signature(SignatureChange { args: [Changed(0, [Name(StringChange("jwt", "project_id")), Ty(StringChange("UntrustedToken", "ProjectId"))]), Removed(1, ArgDesc { name: "project_id", ty: "ProjectId" }), Removed(2, ArgDesc { name: "amount", ty: "BalanceOf<T>" }), Removed(3, ArgDesc { name: "multiplier", ty: "MultiplierOf<T>" }), Removed(4, ArgDesc { name: "asset", ty: "AcceptedFundingAsset" })] })]
[≠] 8: decide_project_outcome ( jwt: UntrustedToken, project_id: ProjectId, outcome: FundingOutcomeDecision, ) )
[Name(StringChange("decide_project_outcome", "bid")), Signature(SignatureChange { args: [Changed(2, [Name(StringChange("outcome", "ct_amount")), Ty(StringChange("FundingOutcomeDecision", "BalanceOf<T>"))]), Added(3, ArgDesc { name: "multiplier", ty: "T::Multiplier" }), Added(4, ArgDesc { name: "asset", ty: "AcceptedFundingAsset" })] })]
[≠] 9: settle_successful_evaluation ( project_id: ProjectId, evaluator: AccountIdOf<T>, evaluation_id: u32, ) )
[Name(StringChange("settle_successful_evaluation", "root_do_start_auction_closing")), Signature(SignatureChange { args: [Removed(1, ArgDesc { name: "evaluator", ty: "AccountIdOf<T>" }), Removed(2, ArgDesc { name: "evaluation_id", ty: "u32" })] })]
[≠] 10: settle_successful_bid ( project_id: ProjectId, bidder: AccountIdOf<T>, bid_id: u32, ) )
[Name(StringChange("settle_successful_bid", "root_do_end_auction_closing")), Signature(SignatureChange { args: [Removed(1, ArgDesc { name: "bidder", ty: "AccountIdOf<T>" }), Removed(2, ArgDesc { name: "bid_id", ty: "u32" })] })]
[≠] 11: settle_successful_contribution ( project_id: ProjectId, contributor: AccountIdOf<T>, contribution_id: u32, ) )
[Name(StringChange("settle_successful_contribution", "root_do_community_funding")), Signature(SignatureChange { args: [Removed(1, ArgDesc { name: "contributor", ty: "AccountIdOf<T>" }), Removed(2, ArgDesc { name: "contribution_id", ty: "u32" })] })]
[≠] 12: settle_failed_evaluation ( project_id: ProjectId, evaluator: AccountIdOf<T>, evaluation_id: u32, ) )
[Name(StringChange("settle_failed_evaluation", "community_contribute")), Signature(SignatureChange { args: [Changed(0, [Name(StringChange("project_id", "jwt")), Ty(StringChange("ProjectId", "UntrustedToken"))]), Changed(1, [Name(StringChange("evaluator", "project_id")), Ty(StringChange("AccountIdOf<T>", "ProjectId"))]), Changed(2, [Name(StringChange("evaluation_id", "amount")), Ty(StringChange("u32", "BalanceOf<T>"))]), Added(3, ArgDesc { name: "multiplier", ty: "MultiplierOf<T>" }), Added(4, ArgDesc { name: "asset", ty: "AcceptedFundingAsset" })] })]
[≠] 13: settle_failed_bid ( project_id: ProjectId, bidder: AccountIdOf<T>, bid_id: u32, ) )
[Name(StringChange("settle_failed_bid", "root_do_remainder_funding")), Signature(SignatureChange { args: [Removed(1, ArgDesc { name: "bidder", ty: "AccountIdOf<T>" }), Removed(2, ArgDesc { name: "bid_id", ty: "u32" })] })]
[≠] 14: settle_failed_contribution ( project_id: ProjectId, contributor: AccountIdOf<T>, contribution_id: u32, ) )
[Name(StringChange("settle_failed_contribution", "remaining_contribute")), Signature(SignatureChange { args: [Changed(0, [Name(StringChange("project_id", "jwt")), Ty(StringChange("ProjectId", "UntrustedToken"))]), Changed(1, [Name(StringChange("contributor", "project_id")), Ty(StringChange("AccountIdOf<T>", "ProjectId"))]), Changed(2, [Name(StringChange("contribution_id", "amount")), Ty(StringChange("u32", "BalanceOf<T>"))]), Added(3, ArgDesc { name: "multiplier", ty: "MultiplierOf<T>" }), Added(4, ArgDesc { name: "asset", ty: "AcceptedFundingAsset" })] })]
[+] CallDesc { index: 15, name: "root_do_end_funding", signature: SignatureDesc { args: [ArgDesc { name: "project_id", ty: "ProjectId" }] } }
[+] CallDesc { index: 16, name: "decide_project_outcome", signature: SignatureDesc { args: [ArgDesc { name: "jwt", ty: "UntrustedToken" }, ArgDesc { name: "project_id", ty: "ProjectId" }, ArgDesc { name: "outcome", ty: "FundingOutcomeDecision" }] } }
[+] CallDesc { index: 17, name: "root_do_project_decision", signature: SignatureDesc { args: [ArgDesc { name: "project_id", ty: "ProjectId" }, ArgDesc { name: "decision", ty: "FundingOutcomeDecision" }] } }
[+] CallDesc { index: 18, name: "root_do_start_settlement", signature: SignatureDesc { args: [ArgDesc { name: "project_id", ty: "ProjectId" }] } }
[+] CallDesc { index: 19, name: "settle_successful_evaluation", signature: SignatureDesc { args: [ArgDesc { name: "project_id", ty: "ProjectId" }, ArgDesc { name: "evaluator", ty: "AccountIdOf<T>" }, ArgDesc { name: "evaluation_id", ty: "u32" }] } }
[+] CallDesc { index: 20, name: "settle_successful_bid", signature: SignatureDesc { args: [ArgDesc { name: "project_id", ty: "ProjectId" }, ArgDesc { name: "bidder", ty: "AccountIdOf<T>" }, ArgDesc { name: "bid_id", ty: "u32" }] } }
[+] CallDesc { index: 21, name: "settle_successful_contribution", signature: SignatureDesc { args: [ArgDesc { name: "project_id", ty: "ProjectId" }, ArgDesc { name: "contributor", ty: "AccountIdOf<T>" }, ArgDesc { name: "contribution_id", ty: "u32" }] } }
[≠] 22: set_para_id_for_project ( jwt: UntrustedToken, project_id: ProjectId, para_id: ParaId, ) )
[Name(StringChange("set_para_id_for_project", "settle_failed_evaluation")), Signature(SignatureChange { args: [Changed(0, [Name(StringChange("jwt", "project_id")), Ty(StringChange("UntrustedToken", "ProjectId"))]), Changed(1, [Name(StringChange("project_id", "evaluator")), Ty(StringChange("ProjectId", "AccountIdOf<T>"))]), Changed(2, [Name(StringChange("para_id", "evaluation_id")), Ty(StringChange("ParaId", "u32"))])] })]
[≠] 23: start_migration_readiness_check ( jwt: UntrustedToken, project_id: ProjectId, ) )
[Name(StringChange("start_migration_readiness_check", "settle_failed_bid")), Signature(SignatureChange { args: [Changed(0, [Name(StringChange("jwt", "project_id")), Ty(StringChange("UntrustedToken", "ProjectId"))]), Changed(1, [Name(StringChange("project_id", "bidder")), Ty(StringChange("ProjectId", "AccountIdOf<T>"))]), Added(2, ArgDesc { name: "bid_id", ty: "u32" })] })]
[≠] 24: migration_check_response ( query_id: xcm::v3::QueryId, response: xcm::v3::Response, ) )
[Name(StringChange("migration_check_response", "settle_failed_contribution")), Signature(SignatureChange { args: [Changed(0, [Name(StringChange("query_id", "project_id")), Ty(StringChange("xcm::v3::QueryId", "ProjectId"))]), Changed(1, [Name(StringChange("response", "contributor")), Ty(StringChange("xcm::v3::Response", "AccountIdOf<T>"))]), Added(2, ArgDesc { name: "contribution_id", ty: "u32" })] })]
[+] CallDesc { index: 25, name: "start_pallet_migration", signature: SignatureDesc { args: [ArgDesc { name: "jwt", ty: "UntrustedToken" }, ArgDesc { name: "project_id", ty: "ProjectId" }, ArgDesc { name: "para_id", ty: "ParaId" }] } }
[≠] 26: migrate_one_participant ( project_id: ProjectId, participant: AccountIdOf<T>, ) )
[Name(StringChange("migrate_one_participant", "start_offchain_migration")), Signature(SignatureChange { args: [Changed(0, [Name(StringChange("project_id", "jwt")), Ty(StringChange("ProjectId", "UntrustedToken"))]), Changed(1, [Name(StringChange("participant", "project_id")), Ty(StringChange("AccountIdOf<T>", "ProjectId"))])] })]
[≠] 27: confirm_migrations ( query_id: QueryId, response: Response, ) )
[Name(StringChange("confirm_migrations", "start_pallet_migration_readiness_check")), Signature(SignatureChange { args: [Changed(0, [Name(StringChange("query_id", "jwt")), Ty(StringChange("QueryId", "UntrustedToken"))]), Changed(1, [Name(StringChange("response", "project_id")), Ty(StringChange("Response", "ProjectId"))])] })]
[≠] 28: root_do_evaluation_end ( project_id: ProjectId, ) )
[Name(StringChange("root_do_evaluation_end", "pallet_migration_readiness_response")), Signature(SignatureChange { args: [Changed(0, [Name(StringChange("project_id", "query_id")), Ty(StringChange("ProjectId", "xcm::v3::QueryId"))]), Added(1, ArgDesc { name: "response", ty: "xcm::v3::Response" })] })]
[≠] 29: root_do_auction_opening ( project_id: ProjectId, ) )
[Name(StringChange("root_do_auction_opening", "send_pallet_migration_for")), Signature(SignatureChange { args: [Added(1, ArgDesc { name: "participant", ty: "AccountIdOf<T>" })] })]
[≠] 30: root_do_start_auction_closing ( project_id: ProjectId, ) )
[Name(StringChange("root_do_start_auction_closing", "confirm_pallet_migrations")), Signature(SignatureChange { args: [Changed(0, [Name(StringChange("project_id", "query_id")), Ty(StringChange("ProjectId", "QueryId"))]), Added(1, ArgDesc { name: "response", ty: "Response" })] })]
[≠] 31: root_do_end_auction_closing ( project_id: ProjectId, ) )
[Name(StringChange("root_do_end_auction_closing", "confirm_offchain_migration")), Signature(SignatureChange { args: [Added(1, ArgDesc { name: "participant", ty: "AccountIdOf<T>" })] })]
[≠] 32: root_do_community_funding ( project_id: ProjectId, ) )
[Name(StringChange("root_do_community_funding", "mark_project_ct_migration_as_finished"))]
[-] "root_do_remainder_funding"
[-] "root_do_end_funding"
[-] "remove_project"
[-] "root_do_project_decision"
[-] "root_do_start_settlement"
- events changes:
[≠] 12: ProjectParaIdSet ( project_id: ProjectId, para_id: ParaId, ) )
[Name(StringChange("ProjectParaIdSet", "PalletMigrationStarted"))]
[+] EventDesc { index: 19, name: "CTMigrationFinished", signature: SignatureDesc { args: [ArgDesc { name: "project_id", ty: "ProjectId" }] } }
- errors changes:
[≠] 47: SettlementNotStarted
[Name(StringChange("SettlementNotStarted", "FundingSuccessSettlementNotStarted"))]
[≠] 48: WrongSettlementOutcome
[Name(StringChange("WrongSettlementOutcome", "FundingFailedSettlementNotStarted"))]
[≠] 49: ParticipationsNotSettled
[Name(StringChange("ParticipationsNotSettled", "WrongSettlementOutcome"))]
[+] ErrorDesc { index: 50, name: "ParticipationsNotSettled" }
[+] ErrorDesc { index: 51, name: "SettlementNotComplete" }
[+] ErrorDesc { index: 52, name: "MigrationsStillPending" }
- constants changes:
[-] "PreImageLimit"
- storages changes:
[+] StorageDesc { name: "UnmigratedCounter", modifier: "Default", default_value: [0, 0, 0, 0] }
SUMMARY:
- Compatible.......................: false
- Require transaction_version bump.: true